Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][mysql] Problem z petla
Forum PHP.pl > Forum > PHP
brekmar
Witam, tworze sobie panel administracyjny i mam maly problem z petla ktora updatuje dane, napisalem to w taki sposob:
  1. <?php
  2. $admin = mysql_query("SELECT * FROM opcje") or
  3. die ('Blad w pytaniu');
  4. while ($dane = mysql_fetch_assoc( $admin )) {
  5. $login = $dane['Login1'];
  6. $o1 = explode("|", $dane['opcja1']);
  7. $licz1 = $o1[0]*$wsp1;
  8. $licz1a = $o1[0]-$licz1;
  9. $wstaw1 = "$licz1a|$licz1|$o1[2]";
  10. $upd = mysql_query("UPDATE opcje SET opcja1 = '$wstaw1' WHERE Login1 = '$login'") or die ('Blad w zapytaniu');
  11. }
  12. ?>

No i nic sie nie dzieje, pisze ze update sie udal a w bazie nic sie nie zmienia. Prosze o pomoc.
Civil
Jeżeli update się udał a nic się nie zmieniło to znaczy, że coś jest nie tak z warunkiem po WHERE.
brekmar
sprawdzilem warunek where i wszystko sie zgadza, a mimo to dalej nie updatuje bazy ;/
Cezar708
Cudów nie ma! Jeśli Ci się nie wykonuje update to widocznie jest błąd: możesz spróbować sprawdzić jakie rzeczywiście zapytania się wykonują.. i to wyświetlić:

na przykład:
  1. <?php
  2. $admin = mysql_query("SELECT * FROM opcje") or
  3. die ('Blad w pytaniu');
  4. while ($dane = mysql_fetch_assoc( $admin )) {
  5. $login = $dane['Login1'];
  6. $o1 = explode("|", $dane['opcja1']);
  7. $licz1 = $o1[0]*$wsp1;
  8. $licz1a = $o1[0]-$licz1;
  9. $wstaw1 = "$licz1a|$licz1|$o1[2]";
  10. $zapytanie = "UPDATE opcje SET opcja1 = '$wstaw1' WHERE Login1 = '$login'";
  11. $upd = mysql_query($zapytanie) or die ('Blad w zapytaniu');
  12. echo "<hr>$zapytanie";
  13. }
  14. ?>
1010
a sprawdziłeś czy pętla ci się wykonuje?
brekmar
Jednak nie bylo bledu, poprostu zle z formularza sciagal, $wsp wynosila zero i dlatego bylo w bazie to samo biggrin.gif
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.