Update main.go

This commit is contained in:
s441433 2019-01-02 01:13:39 +01:00
parent 2124051cd3
commit 4c2434415b

250
main.go
View File

@ -14,12 +14,31 @@ import (
_ "github.com/mattn/go-sqlite3" _ "github.com/mattn/go-sqlite3"
) )
//logowanie ------------
var loginFROMsite string
var passwordFROMsite string
var UserView string
//users ---------------
var IDusers int var IDusers int
var User string var User string
var Password string var Password string
var PIN int var PIN int
var RFID int var RFID int
var Login string var Login string
var Blokada bool
var Koszt int
//bilety ---------------
var IDbiletu int
var KtoZabral string
var DataCzas string
var KosztBiletu int
//dania ---------------
var IDdania int
var NazwaDania string
var KosztDania int
//*************************************************************************** //***************************************************************************
//funkcje sterujące //funkcje sterujące
@ -35,49 +54,84 @@ func panel(w http.ResponseWriter, r *http.Request) {
//Here: //Here:
//time.Sleep(3 * time.Second) //time.Sleep(3 * time.Second)
fmt.Println("method:", r.Method) /*
if r.Method == "GET" { //bilety ----------------------------------
t, _ := template.ParseFiles("panel.gtpl") db, err := sql.Open("sqlite3", "stolowkaZPM.db")
d := struct {
UserView string
}{
UserView: User}
t.ExecuteTemplate(w, "panel.gtpl", d)
}
}
/*----------------------------------
db, err := sql.Open("sqlite3", "stolowkaZPM.db")
checkErr(err)
// query
rows, err := db.Query("SELECT * FROM users")
checkErr(err)
//fmt.Fprintf(w, "Lista użytkowników:\n")
for rows.Next() {
err = rows.Scan(&IDusers, &User, &Password, &PIN, &RFID, &Login)
checkErr(err) checkErr(err)
//fmt.Printf("%d. %s, %s, %d, %d, %s \n", IDusers, User, Password, PIN, RFID, Login) rows1, err := db.Query("SELECT * FROM bilety")
//fmt.Fprintf(w, "%d. %s \n", IDusers, User) checkErr(err)
if r.Method == "POST" { fmt.Fprintf(w, "Lista zabranych biletów: \n")
if Login == loginFROMsite { for rows1.Next() {
if Password == passwordFROMsite { err = rows1.Scan(&IDbiletu, &KtoZabral, &DataCzas, &KosztBiletu)
checkErr(err)
} fmt.Printf("%d. %s, %s, %d \n", IDbiletu, KtoZabral, DataCzas, KosztBiletu)
}
} }
} //----------------------------------
rows.Close() //dania ----------------------------------
db.Close() rows2, err := db.Query("SELECT * FROM dania")
//---------------------------------- checkErr(err)
*/ fmt.Fprintf(w, "Lista dań: \n")
for rows2.Next() {
err = rows2.Scan(&IDdania, &NazwaDania, &KosztDania)
checkErr(err)
fmt.Printf("%d. %s, %d \n", IDdania, NazwaDania, KosztDania)
}
//----------------------------------
rows1.Close()
rows2.Close()
db.Close()
*/
fmt.Println("method:", r.Method)
t, _ := template.ParseFiles("panel.gtpl")
d := struct {
UserView string
}{
UserView: User}
t.ExecuteTemplate(w, "panel.gtpl", d)
}
//############################################################################# //#############################################################################
func login(w http.ResponseWriter, r *http.Request) { func login(w http.ResponseWriter, r *http.Request) {
loginFROMsite := r.FormValue("loginFROMsite")
passwordFROMsite := r.FormValue("passwordFROMsite")
//zaloguj := "Zalogowano!"
//**************************************************************************
db, err := sql.Open("sqlite3", "stolowkaZPM.db")
checkErr(err)
// query
rows0, err := db.Query("SELECT * FROM users")
checkErr(err)
for rows0.Next() {
err = rows0.Scan(&IDusers, &User, &Password, &PIN, &RFID, &Login, &Blokada, &Koszt)
checkErr(err)
//fmt.Printf("%d. %s, %s, %d, %d, %s, %d, %d \n", IDusers, User, Password, PIN, RFID, Login, Blokada, Koszt)
//fmt.Fprint(w, IDusers)
//fmt.Fprint(w, ". ")
//fmt.Fprint(w, User)
//fmt.Fprint(w, " \n")
//if r.Method == "POST" {
if Login == loginFROMsite {
if Password == passwordFROMsite {
//fmt.Fprintln(w, zaloguj)
//fmt.Fprintln(w, usernameFROMsite)
//time.Sleep(3 * time.Second)
//if zaloguj == "Zalogowano!"
http.Redirect(w, r, "http://localhost:9197/panel", http.StatusSeeOther)
panel(w, r)
break
}
}
//}
}
fmt.Println("method:", r.Method) fmt.Println("method:", r.Method)
if r.Method == "GET" { if r.Method == "GET" {
t, _ := template.ParseFiles("login.gtpl") t, _ := template.ParseFiles("login.gtpl")
t.Execute(w, nil) t.Execute(w, nil)
} else { //} else {
r.ParseForm() r.ParseForm()
//fmt.Println("usernameFROMsite: ", r.Form["usernameFROMsite"]) //fmt.Println("usernameFROMsite: ", r.Form["usernameFROMsite"])
//fmt.Println("passwordFROMsite: ", r.Form["passwordFROMsite"]) //fmt.Println("passwordFROMsite: ", r.Form["passwordFROMsite"])
@ -88,51 +142,105 @@ func login(w http.ResponseWriter, r *http.Request) {
// goto Here // goto Here
//} //}
} }
loginFROMsite := r.FormValue("loginFROMsite")
passwordFROMsite := r.FormValue("passwordFROMsite")
//zaloguj := "Zalogowano!"
//************************************************************************** //obsługa blędnego wpisania loginu lub hasła
db, err := sql.Open("sqlite3", "stolowkaZPM.db")
checkErr(err)
// query
rows, err := db.Query("SELECT * FROM users")
checkErr(err)
for rows.Next() {
err = rows.Scan(&IDusers, &User, &Password, &PIN, &RFID, &Login)
checkErr(err)
//fmt.Printf("%d. %s, %s, %d, %d, %s \n", IDusers, User, Password, PIN, RFID, Login)
//fmt.Fprint(w, IDusers)
//fmt.Fprint(w, ". ")
//fmt.Fprint(w, User)
//fmt.Fprint(w, " \n")
if r.Method == "POST" {
if Login == loginFROMsite {
if Password == passwordFROMsite {
//fmt.Fprintln(w, zaloguj)
//fmt.Fprintln(w, usernameFROMsite)
//time.Sleep(3 * time.Second)
//if zaloguj == "Zalogowano!"
http.Redirect(w, r, "http://localhost:9197/panel", http.StatusSeeOther)
panel(w, r)
break
}
}
}
}
if r.Method == "POST" { if r.Method == "POST" {
if loginFROMsite != Login { if loginFROMsite != Login {
t, _ := template.ParseFiles("login.gtpl") if loginFROMsite == "" {
t.Execute(w, nil) if passwordFROMsite != Password {
fmt.Fprint(w, "*** UWAGA! *** Błąd logowania! Login lub hasło nieprawidłowe. *** Spróbuj ponownie. ***") t, _ := template.ParseFiles("login.gtpl")
t.Execute(w, nil)
fmt.Fprint(w, "*** UWAGA! *** Błąd logowania! Login lub hasło nieprawidłowe. *** Spróbuj ponownie. ***")
}
} else {
if passwordFROMsite != Password {
t, _ := template.ParseFiles("login.gtpl")
t.Execute(w, nil)
fmt.Fprint(w, "*** UWAGA! *** Błąd logowania! Login lub hasło nieprawidłowe. *** Spróbuj ponownie. ***")
}
}
} }
} }
rows.Close() rows0.Close()
db.Close() db.Close()
//************************************************************************** //**************************************************************************
} }
//#############################################################################
func historiaPosilkow(w http.ResponseWriter, r *http.Request) {
t, _ := template.ParseFiles("historiaPosilkowNaglowek.gtpl")
d := struct {
UserView string
}{
UserView: User}
t.ExecuteTemplate(w, "historiaPosilkowNaglowek.gtpl", d)
//bilety ----------------------------------
db, err := sql.Open("sqlite3", "stolowkaZPM.db")
checkErr(err)
rows3, err := db.Query("SELECT * FROM bilety")
checkErr(err)
for rows3.Next() {
err = rows3.Scan(&IDbiletu, &KtoZabral, &DataCzas, &KosztBiletu)
checkErr(err)
if KtoZabral == User {
t, _ := template.ParseFiles("historiaPosilkow.gtpl")
d := struct {
IDbiletuView int
KtoZabralView string
DataCzasView string
KosztBiletuView int
}{
IDbiletuView: IDbiletu,
KtoZabralView: KtoZabral,
DataCzasView: DataCzas,
KosztBiletuView: KosztBiletu}
t.ExecuteTemplate(w, "historiaPosilkow.gtpl", d)
}
//----------------------------------
}
rows3.Close()
db.Close()
}
//#############################################################################
func platnosci(w http.ResponseWriter, r *http.Request) {
t, _ := template.ParseFiles("platnosci.gtpl")
d := struct {
UserView string
}{
UserView: User}
t.ExecuteTemplate(w, "platnosci.gtpl", d)
//bilety ----------------------------------
db, err := sql.Open("sqlite3", "stolowkaZPM.db")
checkErr(err)
rows4, err := db.Query("SELECT * FROM bilety")
checkErr(err)
for rows4.Next() {
err = rows4.Scan(&IDbiletu, &KtoZabral, &DataCzas, &KosztBiletu)
checkErr(err)
if KtoZabral == User {
t, _ := template.ParseFiles("platnosci.gtpl")
d := struct {
IDbiletuView int
KtoZabralView string
DataCzasView string
KosztBiletuView int
}{
IDbiletuView: IDbiletu,
KtoZabralView: KtoZabral,
DataCzasView: DataCzas,
KosztBiletuView: KosztBiletu}
t.ExecuteTemplate(w, "platnosci.gtpl", d)
}
//----------------------------------
}
rows4.Close()
db.Close()
}
//*************************************************************************** //***************************************************************************
//Bazy danych SQlite //Bazy danych SQlite
//*************************************************************************** //***************************************************************************
@ -150,6 +258,8 @@ func main() {
http.HandleFunc("/", opisStołówkaZPM) http.HandleFunc("/", opisStołówkaZPM)
http.HandleFunc("/login", login) http.HandleFunc("/login", login)
http.HandleFunc("/panel", panel) http.HandleFunc("/panel", panel)
http.HandleFunc("/historiaPosilkow", historiaPosilkow)
http.HandleFunc("/platnosci", platnosci)
err := http.ListenAndServe(":9197", nil) err := http.ListenAndServe(":9197", nil)
if err != nil { if err != nil {