Ich lese Daten aus einer MySQL Datenbank mit mysql_fetch_assoc in ein Array ein. Bisher gebe ich die Daten dann mit einer while Schleife aus.
Nun möchte ich diese Datensätze aber noch nach Kategorie sortieren und dann mit mehreren Schleifen ausgeben.
Beispiel:
ID KAT ID BEZ
1 1 Test
2 1 bla bla
3 2 Test 2
Nun möchte ich zuerst alle Daten mit der KAT-ID 1 ausgeben und später dann die Daten mit der KAT ID 2. Wenn ich das mit mehreren Abfragen löse ist das kein Problem - es wäre aber doch sicher von der Performance besser zuerst alle Daten auszulesen und dann anschließend zu sortieren. Außerdem möchte ich noch einen Text über die jeweilige Kategorie setzen.
In PHP würde das das so lösen:
Wie geht so etwas mit Smarty ?
Nun möchte ich diese Datensätze aber noch nach Kategorie sortieren und dann mit mehreren Schleifen ausgeben.
Beispiel:
ID KAT ID BEZ
1 1 Test
2 1 bla bla
3 2 Test 2
Nun möchte ich zuerst alle Daten mit der KAT-ID 1 ausgeben und später dann die Daten mit der KAT ID 2. Wenn ich das mit mehreren Abfragen löse ist das kein Problem - es wäre aber doch sicher von der Performance besser zuerst alle Daten auszulesen und dann anschließend zu sortieren. Außerdem möchte ich noch einen Text über die jeweilige Kategorie setzen.
In PHP würde das das so lösen:
PHP-Code:
$letzte_kategorie = -1;
while($row = mysql_fetch_assoc($result)) {
if($row['KAT_ID'] != $letzte_kategorie) {
echo 'Jetzt kommt Kategorie '.$row['KAT_ID'];
$letzte_kategorie = $row['KAT_ID'];
}
echo $row['BEZ'];
Kommentar