Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] zagnieżdżone pętle
Forum PHP.pl > Forum > Przedszkole
Coolbob
Witam!

Mam taki fragment kodu do tworzenia planu lekcji (oczywiście mam wcześniej zdefiniowaną funkcję sql):
  1. <?
  2. $plany=sql("select * from plany where klasa='$klasa' order by godz;");
  3. $przedm=sql("select nazwa from przedmioty;");
  4. $n=1;
  5. while($pl=mysql_fetch_row($plany))
  6. {
  7. print("
  8. <tr>
  9. <td>$pl[2]</td>
  10. <td><select name=\"pn$n\">
  11. <option>$pl[3]");
  12. while($pr=mysql_fetch_row($przedm))
  13. {print("<option>$pr[0]");}
  14. print("</select>");
  15. print("</td>
  16. <td><select name=\"wt$n\">
  17. <option>$pl[4]");
  18. while($pr=mysql_fetch_row($przedm))
  19. {print("<option>$pr[0]");}
  20. print("</select>");
  21. print("</td>
  22. <td><select name=\"sr$n\">
  23. <option>$pl[5]</option>");
  24. while($pr=mysql_fetch_row($przedm))
  25. {print("<option>$pr[0]</option>");}
  26. print("</select>");
  27. print("</td>
  28. <td><select name=\"cz$n\">
  29. <option>$pl[6]</option>");
  30. while($pr=mysql_fetch_row($przedm))
  31. {print("<option>$pr[0]</option>");}
  32. print("</select>");
  33. print("</td>
  34. <td><select name=\"pt$n\">
  35. <option>$pl[7]</option>");
  36. while($pr=mysql_fetch_row($przedm))
  37. {print("<option>$pr[0]</option>");}
  38. print("</select>");
  39. print("</td></tr>");
  40. $n++;
  41. }
  42. ?>

Problem polega na tym, że wykonywana jest tylko pierwsza zagnieżdżona pętla while a pozostałe są ignorowane:( Dlaczego tak się dzieje?
nospor
bo pierwsza podpetla przelatuje przez caly wynik i zwraca false. kazda nastepna od razu otrzymuje false.
Albo musisz wyzerowac wskaznik (poszukaj w manualu), albo najpierw pobierz wszystko do tablicy, a potem wyswietlaj tablice a nie ciagle wyniki zapytania

proszę poprawić tytuł o znacznik zgodnie z zasadami forum Przedszkole:
Temat: Tematyka i zasady panujace na forum Przedszkole
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.