loop (Schrittweises Durchlaufen einer Datenbank-Abfrage) |
Definition:
Beispiel:
<b>Neueste Neuigkeiten:</b> <loop db=news sort=-> <h3><a href="$URL">$Titel</a></h3> <ul>$Text</ul> <i>von $Autor</i> <p> </loop>
Dieses Beispiel könnte Teil eines Redaktionssystems sein: loop durchläuft alle Einträge der Datenbank news. Da kein Feld für die Sortierung angegeben wurde, erfolgt die Ausgabe chronologisch - allerdings in umgekehrter Reihenfolge, aufgrund des Minus-Zeichens (sort=-). Die neuesten Einträge kommen also ganz oben, was für ein News-System sicherlich wünschenswert ist.
Die Variablen mit dem vorangestellten "Dollar"-Zeichen $ entsprechen jeweils dem Namen eines Feldes, so wie sie bei der Datenbank-Definition vergeben wurden (Achtung auf Gross/Klein-Schreibung, diese wird unterschieden!). Wird ein Feldname verwendet, der nicht existiert, wird einfach nichts eingefügt.
Etwas komplizierter ist der Zugriff auf Felder, deren Namen nicht als Variablennamen verwendet werden können, z.B. Preis in $ oder Frage / Antwort. Wegen der Leerzeichen und den Sonderzeichen ($, bzw. /) ist eine direkte Abfrage nicht möglich. Stattdessen müssen Sie folgendes schreiben:
$_loop{"Preis in $"} $_loop{"Frage / Antwort"}
Loveparade fällt dieses Jahr aus... Für immer?
(Achtung: Die Nachrichten sind nur Beispiele und NICHT real!! ;-)
Manchmal möchte man die komfortablen Menüs des do action=all mit einer eigenen Ausgabe kombinieren. Das geht einfach mit dem Parameter listtype=-. Hier ein Beispiel, das die Blätter-Links vom do action=all erhält und trotzdem eine eigene Ausgabe ermöglicht:
<do action=all listtype=- selectbrowse=no> <loop> $Feld1 - $Feld2... etc.<br> </loop>