Dane potrzebuję wyświetlać pogrupowane najpierw wg. "kategorii" potem wg. "producenta".
Do tej pory robiłem to tak:
Kod
$result = msqli->query ("select * tab ...");
$atab = array ();
while ($awiersz = $result->fetch_assoc ()) $atab[$arec['kategoria']][$arec['producent']][] = $awiersz;
$atab = array ();
while ($awiersz = $result->fetch_assoc ()) $atab[$arec['kategoria']][$arec['producent']][] = $awiersz;
A potem w pętlach foreach () wyświetlałem moje dane:
Kod
foreach ($atab as $kategoria => $akategorie) {
echo $kategoria.'<br>';
foreach ($akategorie as $producent => $aproducenci) {
echo $producent.'<br>';
foreach ($aproducenci as $inx => $awiersz) {
print_wiersz ($awiersz);
}
}
}
echo $kategoria.'<br>';
foreach ($akategorie as $producent => $aproducenci) {
echo $producent.'<br>';
foreach ($aproducenci as $inx => $awiersz) {
print_wiersz ($awiersz);
}
}
}
Jak zrobić, elegancko, aby NIE wrzucać danych do pośredniczącej tabeli
wielo-wymiarowej $atab, tylko od razu wyświetlać je pogrupowane na ekran?