 Jetzt schauen wir uns ...
... die Daten an.
Nachdem wir nun die Abfrageergebnisse in einer Variable gespeichert haben, könnte man annehmen, dass man diese Variable einfach nur mittels echo ausgeben muss. Dem ist aber (leider) nicht so.
Die Daten, die wir erhalten haben, verhalten sich ähnlich, wie ein Array, müssen jedoch erst übergeben werden.
Wollen wir alle Daten ausgeben (bzw. alle Datensätze) verwenden wir am besten eine while-Schleife, die alle Datensätze in ein Array übernimmt und ausgibt und solange ausgeführt wird, wie Datensaätze im Abfrageergebnis vorhanden sind.
Zur Übernahme der Datensätze wird der Befehl mysql_fetch_object verwendet.
<?php
$abfrage = "SELECT url, urlname FROM links";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
{
echo $row->url;
}
?>
Das schaut auf den ersten Blick viel komplizierter aus, als es tatsächlich ist.
Die zwei ersten Zeilen machen das, was wir bereits durchgeführt haben (die Abfrage erstellen und ausführen) und sind hier nur, um klar zu machen, was genau wir abgefragt haben.
Danach kommt die while-Schleife. Die Bedingung dazu lautet "solange ein Eintrag aus der Variable Ergebnis als Arrayinhalt in die Variable row geschrieben wird führe die Schleife aus" - dadurch werden alle Datensätze ausgegeben.
Schließlich die Anweisung zur while-Schleife. Hierbei wird mittels echo Befehl jeweils der Inhalt der Spalte url ausgegeben (das $row->url ist notwendig, weil es sich um ein Array handelt).
Über $row-> und den Spaltennamen können die Spalten beliebig angesprochen werden.
Für besondere Ausgaben (wie zB Tabellen, die jeweils eine bestimmte Anzahl von Spalten haben sollen) genügt ebenfalls eine while-Schleife, jedoch sieht diese dann weitaus umständlicher und komplizierter aus und ist darüber hinaus verschachtelt. Aber das Prinzip bleibt immer gleich.
Als nächstes wäre von Interesse, wie über PHP (also zB mittels eines Onlineformulares) Datensätze in der Datenbank aufgenommen werden können.
|