Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] wyświetlanie pogrupowanych rekordów
Forum PHP.pl > Forum > Przedszkole
DarV
Witam, mam 3 grupy rekordów pogrupowane przez GROUP BY : A/B/C w każdej z nich jest dowolna liczba rekordów.

  1.  
  2. $all = mysql_query('SELECT * FROM reports WHERE user="admin" ORDER BY `reports`.`topack` DESC');
  3. $group = mysql_query('SELECT * FROM reports WHERE user="admin" GROUP BY topack ORDER BY `reports`.`topack` DESC');
  4. $groups = mysql_num_rows($group);
  5. $records = mysql_num_rows($all);
  6.  
  7. while ($record = mysql_fetch_assoc ($group)) {
  8. $recommend = $record['recommend'];
  9. $provided = html_entity_decode($record['provided']);
  10. $program = html_entity_decode($record['program']);
  11. $referralcontact = $record['referralcontact'];
  12. $package = $record['package'];
  13.  
  14. $i = 0;
  15. while($i < $groups) {
  16.  
  17. $topack = $record[$i]['topack'];
  18.  
  19. $ar= mysql_query('SELECT * FROM reports WHERE user="admin" AND topack="'.$topack.'"');
  20. $test = mysql_num_rows($ar);
  21.  
  22. echo "
  23. <ul>
  24. <li>Nazwa użytkownika: <strong class='color'>$recommend</strong></li>
  25. <li>Data dostarczenia: <strong class='color'>$provided</strong></li>
  26. <li>Program do którego dołączył: <strong class='color'>$program</strong></li>
  27. <li>Kontakt do osoby: <strong class='color'>$referralcontact</strong></li>
  28. </ul>";
  29. $i++;
  30. }
  31. }


Chodzi mi by pobrać pierw wszystkie grupy topack a następnie wyświetlić na ich podstawie dane w drugiej pętli tylko nie wiem jak zrobić to prawidłwo.
timon27
Te dwie pętle while to ta sama pętla.
Wyrzuć drugą zostawiając jej zawartość.

Ijako że używasz fetch a nie result to nie możesz pisać:

  1. $topack = $record[$i]['topack'];

tylko

  1. $topack = $record['topack'];
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-2024 Invision Power Services, Inc.