Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Błąd przy while
Forum PHP.pl > Forum > Przedszkole
maza66
Witam. Mam poniższy kod w którym chciałbym, żeby wyświetlał się nagłówek (h5) i specyfikacja, czyli poszczególne pozycje dla danego wydania (nr_wyd).
Niestety mam błąd, i wyswietla mi się wszystko tyle razy ile jest pozycji w wydaniu. Gdzie tkwi błąd?

  1. <?php
  2. mysqli_query($connect, 'SET @i:=0');
  3. $wydania = "SELECT DISTINCT id, nr_wyd FROM wydania ORDER BY id DESC";
  4. $wykonaj = mysqli_query ($connect, $wydania);
  5.  
  6. while ($wiersz=mysqli_fetch_array ($wykonaj)) { ?>
  7. <h5><?php echo $wiersz['nr_wyd'];?></h5>
  8. <table>
  9. <tr>
  10. <td>Lp</td>
  11. <td>Materiał</td>
  12. <td>Ilość</td>
  13. </tr>
  14. <?php
  15. $produkty = "SELECT * FROM wydania WHERE nr_wyd='".$wiersz['nr_wyd']."' ORDER BY nr_wyd ASC";
  16. $sql = mysqli_query ($connect, $produkty);
  17. $i=1;
  18. while ($wiersz2=mysqli_fetch_array ($sql)) { ?>
  19. <tr>
  20. <td><?php echo $i++;?></td>
  21. <td>&nbsp;<?php echo $wiersz2['material'];?></td>
  22. <td><?php echo $wiersz2['ilosc'];?></td>
  23. </tr>
  24. <?php } ?>
  25. </table>
  26. <?php } ?>
trueblue
Masz dostęp do phpMyAdmin, albo innego klienta bazy danych? Jeśli tak, to wykonaj pierwsze zapytanie na bazie danych i zobacz wynik. Dowiesz się gdzie tkwi błąd.

Zamiast dwóch zapytań wystarczy jedno.
Sprawdzasz czy numer wydania jest taki jak poprzedni, jeśli nie, to drukujesz h5, jeśli taki sam, to nie drukujesz.
Aktualny numer_wydania zapisujesz do zmiennej, dzięki czemu możesz wykonać powyższe sprawdzenie.
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.