Prześlij pliki do 'trening-planer'
This commit is contained in:
parent
c33790a017
commit
7c33b5ab36
@ -7,6 +7,7 @@ import (
|
||||
"fmt"
|
||||
"database/sql"
|
||||
_ "github.com/go-sql-driver/mysql"
|
||||
"time"
|
||||
)
|
||||
|
||||
type Plan struct{
|
||||
@ -15,6 +16,7 @@ type Plan struct{
|
||||
Nazwa string
|
||||
Ciezar int
|
||||
Opis string
|
||||
data_t string
|
||||
}
|
||||
type Cwiczenie struct{
|
||||
Opis string
|
||||
@ -26,6 +28,20 @@ type CwiczenieTabela struct{
|
||||
Id_cwiczenie int
|
||||
Nazwa string
|
||||
|
||||
}
|
||||
type Wyniki struct{
|
||||
Ciezar_rzecz int
|
||||
Ciezar_cel int
|
||||
Nazwa string
|
||||
}
|
||||
type ww struct{
|
||||
Wyniki []Wyniki
|
||||
Nazwa string
|
||||
NumerCwiczenia int
|
||||
}
|
||||
type CwiczeniaWyniki struct{
|
||||
Wyniki []ww
|
||||
|
||||
}
|
||||
type uzytkownicy struct {
|
||||
|
||||
@ -34,37 +50,46 @@ type uzytkownicy struct {
|
||||
|
||||
var tmpl2 = template.Must(template.ParseGlob("planowanieTreningu.html"))
|
||||
var tmpl3 = template.Must(template.ParseGlob("cwiczenie.html"))
|
||||
var tmpl4 = template.Must(template.ParseGlob("wyniki.html"))
|
||||
var tmpl = template.Must(template.ParseGlob("koszyk.html"))
|
||||
|
||||
func planowanieTreningu2(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
// dodawanie do bazy z geta
|
||||
db, err := sql.Open("mysql", "finley:password@tcp(127.0.0.1:3306)/baza")
|
||||
|
||||
func baza(){
|
||||
db, err := sql.Open("mysql", "finley:password@tcp(127.0.0.1:3306)/baza")
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
}
|
||||
|
||||
defer db.Close()
|
||||
|
||||
|
||||
rows, err := db.Query("select nazwa from baza.cwiczenie")
|
||||
emp := Plan{}
|
||||
res := []Plan{}
|
||||
for rows.Next() {
|
||||
var nazwa string
|
||||
err = rows.Scan(&nazwa)
|
||||
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
}
|
||||
emp.Nazwa = nazwa
|
||||
res = append(res, emp)
|
||||
}
|
||||
tmpl2.ExecuteTemplate(w, "Index", res)
|
||||
|
||||
}
|
||||
|
||||
// func planowanieTreningu2(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
// // dodawanie do bazy z geta
|
||||
// db, err := sql.Open("mysql", "finley:password@tcp(127.0.0.1:3306)/baza")
|
||||
|
||||
// if err != nil {
|
||||
// panic(err.Error())
|
||||
// }
|
||||
|
||||
// defer db.Close()
|
||||
|
||||
|
||||
// rows, err := db.Query("select nazwa from baza.cwiczenie")
|
||||
// emp := Plan{}
|
||||
// res := []Plan{}
|
||||
// for rows.Next() {
|
||||
// var nazwa string
|
||||
// err = rows.Scan(&nazwa)
|
||||
|
||||
// if err != nil {
|
||||
// panic(err.Error())
|
||||
// }
|
||||
// emp.Nazwa = nazwa
|
||||
// res = append(res, emp)
|
||||
// }
|
||||
// tmpl2.ExecuteTemplate(w, "Index", res)
|
||||
|
||||
// }
|
||||
|
||||
|
||||
func planowanieTreningu(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
@ -100,7 +125,6 @@ Powtorzenia := r.FormValue("Powtorzenia")
|
||||
Ciezar := r.FormValue("Ciezar")
|
||||
Serie := r.FormValue("Serie")
|
||||
Nazwa := r.FormValue("Nazwa")
|
||||
fmt.Printf(Nazwa)
|
||||
db, err := sql.Open("mysql", "finley:password@tcp(127.0.0.1:3306)/baza")
|
||||
|
||||
if err != nil {
|
||||
@ -136,8 +160,6 @@ rows, err := db.Query("INSERT INTO trening_cel (id_cwiczenie, id_uzytkownik, pow
|
||||
|
||||
func wypiszHandler(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
// dodawanie do bazy z geta
|
||||
|
||||
if r.Method == "POST" {
|
||||
Powtorzenia := r.FormValue("Powtorzenia")
|
||||
Ciezar := r.FormValue("Ciezar")
|
||||
@ -159,7 +181,10 @@ var id_cwiczenie int
|
||||
err = rows.Scan(&id_cwiczenie)
|
||||
emp.Id_cwiczenie = id_cwiczenie
|
||||
//odkomentowac pozniej
|
||||
rows, err := db.Query("INSERT INTO trening_rzeczywisty (id_cwiczenia, id_uzytkownik, powtorzenia, ciezar,serie) VALUES (?, 1, ?, ?, ? )", id_cwiczenie, Powtorzenia, Ciezar, Serie)
|
||||
currentTime := time.Now()
|
||||
data_t:= currentTime.Format("2006-01-02")
|
||||
|
||||
rows, err := db.Query("INSERT INTO trening_rzeczywisty (id_cwiczenia, id_uzytkownik, powtorzenia, ciezar,serie, data_t) VALUES (?, 1, ?, ?, ?, ? )", id_cwiczenie, Powtorzenia, Ciezar, Serie, data_t)
|
||||
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
@ -169,7 +194,6 @@ rows, err := db.Query("INSERT INTO trening_rzeczywisty (id_cwiczenia, id_uzytkow
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//koniec dodawania do bazy z geta
|
||||
|
||||
//wyświetlanie treningu
|
||||
@ -268,6 +292,215 @@ emp.Nazwa =nazwa
|
||||
|
||||
}
|
||||
|
||||
func wynikiHandler(w http.ResponseWriter, r *http.Request) {
|
||||
|
||||
|
||||
// rows, err := db.Query("SELECT P.ciezar,N.ciezar FROM baza.trening_cel AS N, baza.trening_rzeczywisty AS P, baza.cwiczenie AS C WHERE N.id = 1 and C.id_cwiczenie = P.id_cwiczenia and C.id_cwiczenie = N.id_cwiczenie")
|
||||
|
||||
// if err != nil {
|
||||
// panic(err.Error())
|
||||
// }
|
||||
// rows2, err := db.Query("SELECT nazwa from baza.cwiczenie where id_cwiczenie=1")
|
||||
// if err != nil {
|
||||
// panic(err.Error())
|
||||
// }
|
||||
|
||||
|
||||
// emp := Wyniki{}
|
||||
// res := []Wyniki{}
|
||||
// for rows.Next() {
|
||||
// var ciezar_rzecz int
|
||||
// var ciezar_cel int
|
||||
// var nazwa string
|
||||
// err = rows.Scan(&ciezar_rzecz, &ciezar_cel)
|
||||
// if err != nil {panic(err.Error()) }
|
||||
// emp.Ciezar_rzecz = ciezar_rzecz
|
||||
// emp.Ciezar_cel = ciezar_cel
|
||||
// err = rows2.Scan(&nazwa)
|
||||
// if err != nil {panic(err.Error()) }
|
||||
|
||||
|
||||
// emp.Nazwa=nazwa
|
||||
// res = append(res, emp)
|
||||
// }
|
||||
|
||||
// tmpl4.ExecuteTemplate(w, "Index", res)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// rows1, err := db.Query("SELECT P.ciezar,N.ciezar FROM baza.trening_cel AS N, baza.trening_rzeczywisty AS P, baza.cwiczenie AS C WHERE N.id = 1 and C.id_cwiczenie = P.id_cwiczenia and C.id_cwiczenie = N.id_cwiczenie")
|
||||
|
||||
// if err != nil {
|
||||
// panic(err.Error())
|
||||
// }
|
||||
|
||||
// rows, err := db.Query("SELECT nazwa FROM baza.cwiczenie WHERE id_cwiczenie = 1")
|
||||
|
||||
// if err != nil {
|
||||
// panic(err.Error())
|
||||
// }
|
||||
|
||||
// emp := Wyniki{}
|
||||
// res := []Wyniki{}
|
||||
// for rows1.Next() {
|
||||
// var ciezar_rzecz int
|
||||
// var ciezar_cel int
|
||||
|
||||
// err = rows1.Scan(&ciezar_rzecz, &ciezar_cel)
|
||||
// if err != nil {
|
||||
// panic(err.Error())
|
||||
// }
|
||||
|
||||
// emp.Ciezar_rzecz = ciezar_rzecz
|
||||
// emp.Ciezar_cel = ciezar_cel
|
||||
|
||||
|
||||
// }
|
||||
|
||||
|
||||
|
||||
// for rows.Next() {
|
||||
|
||||
// var nazwa string
|
||||
// err = rows.Scan(&nazwa)
|
||||
// if err != nil {
|
||||
// panic(err.Error())
|
||||
// }
|
||||
|
||||
|
||||
// emp.Nazwa=nazwa
|
||||
// res = append(res, emp)
|
||||
// }
|
||||
// tmpl4.ExecuteTemplate(w, "Index1", res)
|
||||
// }
|
||||
|
||||
db, err := sql.Open("mysql", "finley:password@tcp(127.0.0.1:3306)/baza")
|
||||
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
}
|
||||
|
||||
defer db.Close()
|
||||
|
||||
|
||||
|
||||
|
||||
for i := 1; i < 4; i++ {
|
||||
|
||||
|
||||
|
||||
rows, err := db.Query("SELECT C.nazwa FROM baza.trening_cel AS N, baza.trening_rzeczywisty AS P, baza.cwiczenie AS C WHERE N.id = ? and C.id_cwiczenie = P.id_cwiczenia and C.id_cwiczenie = N.id_cwiczenie", i)
|
||||
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
}
|
||||
|
||||
emp := ww{}
|
||||
res := []ww{}
|
||||
for rows.Next() {
|
||||
var nazwa string
|
||||
err = rows.Scan(&nazwa)
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
}
|
||||
emp.Nazwa=nazwa
|
||||
emp.NumerCwiczenia=i
|
||||
|
||||
|
||||
rows2, err := db.Query("SELECT P.ciezar, N.ciezar FROM baza.trening_cel AS N, baza.trening_rzeczywisty AS P, baza.cwiczenie AS C WHERE N.id = ? and C.id_cwiczenie = P.id_cwiczenia and C.id_cwiczenie = N.id_cwiczenie", i)
|
||||
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
}
|
||||
emp2 := Wyniki{}
|
||||
res2 := []Wyniki{}
|
||||
for rows2.Next() {
|
||||
var ciezar_rzecz int
|
||||
var ciezar_cel int
|
||||
|
||||
err = rows2.Scan(&ciezar_rzecz, &ciezar_cel)
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
}
|
||||
|
||||
emp2.Ciezar_rzecz = ciezar_rzecz
|
||||
emp2.Ciezar_cel = ciezar_cel
|
||||
res2 = append(res2, emp2)
|
||||
|
||||
}
|
||||
emp.Wyniki=res2
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
res = append(res, emp)
|
||||
fmt.Println(res)
|
||||
|
||||
|
||||
|
||||
|
||||
tmpl4.ExecuteTemplate(w, "Index", res)
|
||||
|
||||
}
|
||||
pp := Plan{Opis: "zakładka"}
|
||||
tt, _ := template.ParseFiles("kon.html")
|
||||
tt.Execute(w, pp)
|
||||
}
|
||||
|
||||
|
||||
func testHandler(w http.ResponseWriter, r *http.Request) {
|
||||
currentTime := time.Now()
|
||||
fmt.Println("YYYY-MM-DD : ", currentTime.Format("2006-01-02"))
|
||||
fmt.Println("hehheh")
|
||||
}
|
||||
|
||||
func start(w http.ResponseWriter, r *http.Request) {
|
||||
p := Plan{Opis: "zakładka"}
|
||||
t, _ := template.ParseFiles("start.html")
|
||||
t.Execute(w, p)
|
||||
}
|
||||
|
||||
func dodaj_cwiczenieHandler(w http.ResponseWriter, r *http.Request) {
|
||||
if r.Method == "POST" {
|
||||
Nazwa := r.FormValue("Nazwa")
|
||||
|
||||
Rodzaj := r.FormValue("Rodzaj")
|
||||
Opis := r.FormValue("Opis")
|
||||
Zdjecie := r.FormValue("Zdjecie")
|
||||
db, err := sql.Open("mysql", "finley:password@tcp(127.0.0.1:3306)/baza")
|
||||
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
}
|
||||
|
||||
defer db.Close()
|
||||
|
||||
|
||||
rows, err := db.Query("INSERT INTO baza.cwiczenie (opis, rodzaj, nazwa, zdjecie) VALUES (?, ?, ?, ?)", Opis, Rodzaj, Nazwa, Zdjecie)
|
||||
|
||||
if err != nil {
|
||||
panic(err.Error())
|
||||
}
|
||||
defer rows.Close()
|
||||
}
|
||||
p := Plan{Opis: "zakładka"}
|
||||
t, _ := template.ParseFiles("dodajcwiczenie.html")
|
||||
t.Execute(w, p)
|
||||
|
||||
}
|
||||
|
||||
func main() {
|
||||
|
||||
@ -315,9 +548,13 @@ func main() {
|
||||
http.HandleFunc("/wypisz/", wypiszHandler)
|
||||
http.HandleFunc("/logowanie/", logowanieHandler)
|
||||
http.HandleFunc("/planer/", planowanieTreningu)
|
||||
http.HandleFunc("/planer2/", planowanieTreningu2)
|
||||
// http.HandleFunc("/planer2/", planowanieTreningu2)
|
||||
http.HandleFunc("/cwiczenie/", opisCwiczenia)
|
||||
http.ListenAndServe(":8070", nil)
|
||||
http.HandleFunc("/wyniki/", wynikiHandler)
|
||||
http.HandleFunc("/test/", testHandler)
|
||||
http.HandleFunc("/dodajcwiczenie/", dodaj_cwiczenieHandler)
|
||||
http.HandleFunc("/start/", start)
|
||||
http.ListenAndServe(":8009", nil)
|
||||
|
||||
|
||||
}
|
||||
|
130
trening-planer/wyniki.html
Normal file
130
trening-planer/wyniki.html
Normal file
@ -0,0 +1,130 @@
|
||||
{{ define "Index" }}
|
||||
<!DOCTYPE html>
|
||||
<html lang="pl">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
|
||||
<title>Rejestracja</title><link rel="Shortcut icon" href="img/logo2.jpg" />
|
||||
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet">
|
||||
<link rel="Stylesheet" type="text/css" href="/static/css_moje/style_moje.css" />
|
||||
<link href="http://fonts.googleapis.com/css?family=Roboto:400,700,400italic,500italic&subset=latin,latin-ext" rel="stylesheet">
|
||||
<style>
|
||||
|
||||
|
||||
body {
|
||||
font-family: "Roboto", "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
}</style>
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.4.0/Chart.min.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<div class="row">
|
||||
<nav class="navbar navbar-default navbar-fixed-top">
|
||||
<div class="container">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle collapsed"
|
||||
data-toggle="collapse"
|
||||
data-target="#mainmenu"
|
||||
aria-expanded="false">
|
||||
<span class="sr-only">Przełącznik nawigacji</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
|
||||
</div>
|
||||
<div class="collapse navbar-collapse navbar-right mainmenu" id="mainmenu">
|
||||
<ul class="nav navbar-nav">
|
||||
|
||||
<li><a class="nav-link" href="/logowanie/">Logowanie</a>
|
||||
<li><a class="nav-link" href="/planer/">Zaplanuj nowy trening</a>
|
||||
<li><a class="nav-link" href="/wypisz/">Twoj trening</a>
|
||||
<li><a class="btn btn-default" href="/wyniki/">Wyniki</a>
|
||||
<li><a class="nav-link" href="/dodajcwiczenie/">Dodaj ćwiczenie</a>
|
||||
<li><a class="nav-link" href="/dodajcwiczenie/">Ustawienia</a>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
</div>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
|
||||
<div class="container" style="margin-top:100px;">
|
||||
<div class="row">
|
||||
|
||||
<div class="rejestracja col-lg-12">
|
||||
|
||||
<span style="font-size: 18px">{{range.}}{{.Nazwa}}{{end}}
|
||||
</span>
|
||||
<canvas id="{{range.}}{{.NumerCwiczenia}}{{end}}" width="400" height="150"></canvas>
|
||||
<script>
|
||||
var ctx = document.getElementById("{{range.}}{{.NumerCwiczenia}}{{end}}");
|
||||
var myChart = new Chart(ctx, {
|
||||
type: 'line',
|
||||
data: {
|
||||
labels: ["Styczeń", "Luty", "Marzec", "Kwiecień", "Maj", "Czerwiec", "Lipiec", "Sierpień", "Wrzesień", "Październik", "Listopad", "Grudzień"],
|
||||
datasets: [{
|
||||
label: 'Twoje wyniki',
|
||||
|
||||
data: [
|
||||
{{range.}}
|
||||
{{range .Wyniki}}
|
||||
{{.Ciezar_rzecz}},
|
||||
{{end}} {{end}}
|
||||
],
|
||||
backgroundColor: [
|
||||
'rgba(255, 99, 132, 0.2)',
|
||||
|
||||
],
|
||||
borderColor: [
|
||||
'rgba(255,99,132,1)',
|
||||
|
||||
],
|
||||
borderWidth: 1
|
||||
},
|
||||
{
|
||||
label: 'Twój cel',
|
||||
|
||||
data: [{{range.}}
|
||||
{{range .Wyniki}}
|
||||
{{.Ciezar_cel}},
|
||||
{{end}} {{end}} ],
|
||||
backgroundColor: [
|
||||
'rgba(65, 99, 132, 0.2)',
|
||||
|
||||
],
|
||||
borderColor: [
|
||||
'rgba(65,99,132,1)',
|
||||
|
||||
],
|
||||
borderWidth: 1
|
||||
}]
|
||||
|
||||
},
|
||||
options: {
|
||||
scales: {
|
||||
yAxes: [{
|
||||
ticks: {
|
||||
beginAtZero:true
|
||||
}
|
||||
}]
|
||||
}
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
</div> </div>
|
||||
|
||||
|
||||
<div class="collapse navbar-collapse navbar-right form-horizontal"></div>
|
||||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
|
||||
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
{{end}}
|
Loading…
Reference in New Issue
Block a user