Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Wnioskowanie wyniku i dodawanie względem niego.
Forum PHP.pl > Forum > Przedszkole
thesuns
W mysql zapisuje wygraną lub przegraną.
Wygraną lub przegraną wyciąga z wyniku meczu.
Przykład:
3 mecze. (1 drużyna to zawsze moja, a 2 przeciwnika)
1 mecz - 25-20
2 mecz 15-26
3 mecz 15-14

Ustala która drużyna wygrała i po tym dodaje do bazy 1 do win lub 1 do lose.

  1. $stworz = mysql_query('CREATE TABLE IF NOT EXISTS `mecze` (
  2. `id` int(11) NOT NULL AUTO_INCREMENT,
  3. `team1` text NOT NULL,
  4. `team2` text NOT NULL,
  5. `wynik1` int NOT NULL,
  6. `wynik2` int NOT NULL,
  7. `win` int NOT NULL,
  8. `lose` int NOT NULL,
  9. (...)
  10. $dodaj = mysql_query("INSERT INTO `mecze` (`team1`, `team2`, `wynik1`, `wynik2`)
  11. VALUES ('".$team1."', '".$team2."', '".$wynik1."', '".$wynik2."')");
  12. $ilosc_zapytan++;
  13. if($dodaj)
  14. {
  15. echo '<div class="uwaga">Pomylnie dodano mecz';
  16. if($team1 > $team2)
  17. {
  18. $editw1 = mysql_query("SELECT `win` from `mecze` ORDER BY `id` DESC LIMIT 0");
  19. $new_win1 = $editw2++;
  20. $editw11 = mysql_query("UPDATE `mecze` SET `win` = '$new_win1'");
  21. }
  22. else if($team1 < $team2)
  23. {
  24. $editl1 = mysql_query("SELECT `lose` from `mecze` ORDER BY `id` DESC LIMIT 0");
  25. $new_lose1 = $editw2++;
  26. $editl11 = mysql_query("UPDATE `mecze` SET `lose` = '$new_lose1'");
  27. }
  28. }
nospor
Cieszymy się razem z tobą. Fajny kod.

Napisz, gdy bedziesz mial jakis problem.
thesuns
Hmm... źle się wyraziłem biggrin.gif Zapomniałem napisać o problemie biggrin.gif
W bazie na win jest 0 i nie dodaje się mimo iż jest 1 wygrany mecz. Żadnego błędu na stronie, puste pole.
nospor
$editw1 = mysql_query("SELECT `win` from `mecze` ORDER BY `id` DESC LIMIT 0");
$new_win1 = $editw2++;

że niby co to ma być? Zajrzyj do manuala i zobacz co zwraca mysql_query() a dowiesz się, że nijak na tym wyniku nie można robić dodawania....
To po pierwsze

A po drugie nie ma sensu pobierac wartosci kolumny z bazy, zwiekszac ją w php, a potem wynik spowrotem zapisywać do bazy. To się robi wszystki jednym UPDATE na bazie i po sprawie
update tabela set pole=pole+1 where costam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.