![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 3.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam (IMG:style_emoticons/default/winksmiley.jpg)
Jestem bardzo poczatkujacy, nie tylko z PHP ale i z programowaniem. Chcialbym sie nauczyc tego jezyka, ale bez pomocy watpie by zakonczyloby sie to powodzeniem. Wiec, do rzeczy. Dla praktyki napisalem maly skrypt, ktory dodawalby punkty po nacisnieciu na przycisk dla danej druzyny (chodzi o siatkowke ;D). I np. mozna by tego uzyc do transmisji na zywo. Ale jest pewien problem, poniewaz nie wiem jak to napisac, ze akurat PO NACISNIECIU przycisku, funkcja zaczyna dzialac. Kod funkcji to:
A cala strona (samo body):
Takze, jak widac ta funkcja to jedyne w sumie co umialem napisac i nawet pewnie nie jest do konca poprawna ;)Uzylem checkbox, bo cos tam probowalem wykombinowac z 'value', ale mysle ze przycisk 'SUBMIT' z odpowiednim tekstem bylby lepszym pomyslem. Z gory dziekuje za pomysly i poprawki ;p Wkoncu uczymy sie na bledach. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 317 Pomógł: 58 Dołączył: 6.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
Takie coś mniej więcej. Traktuj to bardziej jako podpowiedź niż gotowca. Musisz zadbać by sesja została odpowiednio zainicjalizowana i nie wygasła w trakcie meczu, ale w siatkówce raczej nie ma długich przerw. Oczywiście najlepiej byłoby zapisywać to do bazy. Ale najpierw spróbuj prostszego sposobu.
Można jeszcze tak: Ten post edytował luck 3.04.2010, 08:25:44 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 3.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Dzieki za podpowiedzi, tylko mam pytanie, po co do tego uzywac az sesji?
Nie mozna po prostu uzyc funkcji? Przeciez te dane ciagle ulegaja zmianie i potrzeba tylko dodawac jeden caly czas (IMG:style_emoticons/default/winksmiley.jpg) Oraz jeszcze jedno pytanko, ktore juz zreszta zadalem. Jak poinformowac, albo cos (IMG:style_emoticons/default/biggrin.gif) nie wiem jak to sie dokladnie nazywa, ale chodzi o to, ze jak nacisne akurat RESOVIA (na podst. ostatniego kodu html), to bedzie wiedziec ze przyznac punkty resovii. Jak wgl zmusic to DO przyznania tych funkcji. if? z $_POST nie dziala.. Ten post edytował oleQ 3.04.2010, 17:27:20 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 18 Dołączył: 12.04.2009 Skąd: Rypin Ostrzeżenie: (0%) ![]() ![]() |
włącz sobie error_reporting na all, źle odwołujesz się do zmiennej statycznej (self:(IMG:style_emoticons/default/smile.gif) w poniższym kodzie
Cytat Dla praktyki napisalem maly skrypt, ktory dodawalby punkty po nacisnieciu na przycisk dla danej druzyny (chodzi o siatkowke ;D). I np. mozna by tego uzyc do transmisji na zywo. Ok, tylko kolega wyżej podał przykład na sesji, którą widzisz tylko ty, nikt więcej. Zrób sobie prostą klasę która będzie łączyła się z bazą, dodawała punkt danej drużynie, odejmowała je itp. A jeżeli jeszcze OOP nie próbowałeś no to na funkcjach. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 317 Pomógł: 58 Dołączył: 6.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
Ok, tylko kolega wyżej podał przykład na sesji, którą widzisz tylko ty, nikt więcej. Zrób sobie prostą klasę która będzie łączyła się z bazą, dodawała punkt danej drużynie, odejmowała je itp. A jeżeli jeszcze OOP nie próbowałeś no to na funkcjach. Słuszna uwaga, skoro wyniki mają być prezentowane innym osobom to oczywiście powinieneś w miejsce sesji użyć innego kontenera choćby "static". Zaznaczyłem, że to co podałem to nie gotowiec, a tylko przykład, jak w prosty sposób można ugryźć temat. Wiadomo, baza danych byłaby tu świętym i najsolidniejszym rozwiązaniem. |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 3.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Tylko jestem ciekaw po co (IMG:style_emoticons/default/winksmiley.jpg) Wlasnie przerabiam baze danych, wiec cos sprobuje wykombinowac. Naprawde dla takiego malego skryptu trzeba az baze wykorzystywac? Ja mialem pomysl na "nadpisywanie" zmiennej po prostu (IMG:style_emoticons/default/winksmiley.jpg) Plus warunki i sprawa gotowa, ale bardzo mozliwe, ze jednak jestem zbut poczatkujacy. W kazdym razie, sprawe przyciskow rozpracowalem.
Mam funkcje, ktora powinna dodawac te punkty, ale za kazdym jednak razem podaje 1.
Warunek:
Ten post edytował oleQ 3.04.2010, 23:30:12 |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 201 Pomógł: 9 Dołączył: 23.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 317 Pomógł: 58 Dołączył: 6.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
Zastanów się chwilę. Twoja funkcja:
Przecież przy każdym wywołaniu w podanej linii zerujesz licznik, więc zawsze po dodaniu punktu dostaniesz wynik 1. Co do użycia bazy to nie chodzi o to, czy skrypt jest mały, czy nie. Ważne, że ma działać tak jak oczekujesz i być przy tym niezawodny. Poza tym możesz dzięki temu prowadzić historię wyników spotkań, odtwarzać przebieg meczów punkt po punkcie itp. Możliwości jest wiele, trzeba tylko pomyśleć (IMG:style_emoticons/default/winksmiley.jpg) |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
Po co baza danych? A no po to, żeby inny użytkownik, który wejdzie na tę Twoją stronę mógł zobaczyć aktualny wynik, bo chyba o to chodzi w skrypcie relacji na żywo. Tymczasem, gdy zastosujesz wszystkie "dobre" wymienione wyżej sposoby, to nawet jeśli będą one skuteczne, to będą działać tylko dla Ciebie. Nikt inny nie zobaczy, że dodałeś punkt jednej, czy drugiej drużynie. Formularz można nieco uprościć i plik może wyglądać tak (nazwa pliku results.php):
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 3.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Super. Wlasnie przerabiam baze danych to chetnie to wybrobuje. Dzieki za odpowiedzi i pomoc.
A luck wspomnial, ze mozliwe byloby przeprowadzenie historii wynikow. Wtedy nie mozna nadpisywac (udpate'owac) bazy, tylko? (IMG:style_emoticons/default/winksmiley.jpg) |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
A luck wspomnial, ze mozliwe byloby przeprowadzenie historii wynikow. Wtedy nie mozna nadpisywac (udpate'owac) bazy, tylko? (IMG:style_emoticons/default/winksmiley.jpg) Dodajemy kolejne rekordy za pomocą INSERT-a, choć wydaje mi się, że prowadzenie historii wyników wymagałoby raczej osobnej tabeli. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 16:38 |