get_next - Gefundene Einträge durchlaufen |
Definition:
Holt den nächsten Datensatz von Ergebnis und speichert ihn in Variablen, mit den entsprechenden Feldnamen. Ohne Angabe von Ergebnis wird die zuletzt abgerufene Datenbank genommen.
Beispiele:
get; while(get_next) { out "Name: $Name - Auto: $Auto<br>"; }
Holt alle Datensätze der zur Seite gehörigen oder per URL übergebenen Datenbank und gibt sie aus.
<perl> get "Vorname==_", "Personen"; while(get_next("Personen")) { out "$Name<br>"; } </perl>
Gibt alle Einträge der Datenbank "Personen" aus, bei denen das Feld "Vorname" leer ist.
Mehrere Abrufe von "get" und "get_next" können verschachtelt werden:
get "Id==*", "kunden"; while(get_next("kunden")) { out "Kunde: $Name<br>"; get "Name==$Auto", "autos"; out "Auto: $Name<br>"; out "Beschreibung: $Beschreibung<p>"; }
Hier wurde eine Relation zwischen den beiden Datenbanken "kunden" und "autos" hergestellt. Jeder Datensatz eines Kunden enthält ein Feld "Auto" mit dem Autonamen des Kunden. Dieser Wert wird verwendet, um den passenden Eintrag aus der Datenbank "autos" zu holen und die Beschreibung für dieses Auto auszugeben.
Sie können auch verschiedene Abfragen derselben Datenbank speichern. Zur Unterscheidung dient der "Ergebnis"-Parameter:
get "Name~=a", "kunden"; get "Name~=b", "kunden", "kmitb"; out "<p>Alle Kunden mit a:</p>"; while(get_next("kunden")) { out "Kunde: $Name<br>"; } out "<hr><p>Alle Kunden mit b:</p>"; while(get_next("kmitb")) { out "Kunde: $Name<br>"; }
Zuerst werden alle Datensätze, die mit "a" beginnen aus der Datenbank "kunden" geholt und im gleichnamigen Ergebnis gespeichert. Dann werden alle Datensätze, die mit "b" beginnen im Ergebnis "kmitb" gespeichert. Schliesslich werden beide Ergebnisse in entsprechenden Schleifen mit "get_next" ausgegeben.
|
Sie können auch direkt über den Ergebnishash auf einen bestimmten gefundenen Datensatz zugreifen, ohne die Datensätze der Reihe nach mit get_next zu durchlaufen.