PHP 4.3

13.5.3 Verarbeitung der Informationen

In diesem Beispiel besteht die Verarbeitung der Informationen nur darin, sie nacheinander auszugeben. Dazu ist es nötig, aus der in $kundenliste gespeicherten, unter Umständen recht umfangreichen Liste an die einzelnen Informationen zu kommen.

Zuerst benötigen Sie eine Funktion, die Ihnen aus der Liste von Kunden eine einzelne Kundenadresse, d.h. einen Datensatz, herausholt:
mysql_fetch_array(resource Abfrageergebnis)

Sie liefert ein Array zurück, in dem alle Spalteneinträge des jeweils aktuellen Datensatzes der Liste stehen.
Diese Liste, auf die jetzt die Variable $kundenliste (das Abfrageergebnis) verweist, wird durch die folgende Tabelle dargestellt:

kundennr anrede vorname nachname Adresse postleitzahl ort
19283746 Frau Helga Krause Berliner Straße 10 12345 Berlin
17654321 Herr Otto Müller Bonner Straße 5 43526 Bonn
16293756 Frau Ilse Bilse Münchner Straße 222 87654 München
17356490 Herr Hugo Meier Kieler Straße 3 34256 Kiel

Die erste Zeile der Tabelle repräsentiert den ersten Datensatz der Liste. Es gibt das Konzept eines aktuellen Datensatzes, auf den sich bestimmte Funktionen, wie die unten verwendete Funktion mysql_fetch_array() beziehen. Ein sogenannter Datensatzzeiger - man kann sich das als Pfeil vorstellen, der auf eine Zeile der Tabelle zeigt - verweist auf den aktuellen Datensatz. In diesem Fall zeigt der Datensatzzeiger zunächst auf die erste Zeile der Tabelle:

  $zeile = mysql_fetch_array($kundenliste)

schreibt nun in das Array $zeile diesen ganzen Datensatz hinein, so dass $zeile dann so aussieht:

  $zeile["kundennr"] = 19283746
$zeile["anrede"] = "Frau"
$zeile["vorname"] = "Helga"
usw.

Um die Einzelinformationen einer Kundenadresse auszugeben, benötigen Sie also nur die Elemente im Array $zeile.
Außerdem wird durch die Funktion mysql_fetch_array() der Datensatzzeiger um eine Zeile weiter nach unten in der Liste geschoben, so dass er jetzt auf den nächsten Datensatz zeigt.

Insgesamt muss dieser Vorgang - Holen einer Kundenadresse in das Array und Ausgeben der einzelnen Array-Elemente - so oft wiederholt werden, bis man am Ende der Liste angelangt ist, d.h. bis die Funktion mysql_fetch_array() keinen Wert mehr (genauer gesagt, einen als false interpretierbaren Wert) zurückliefert:

<table>
<tr>
	<th>Kundennummer</th>
	<th>Name</th>
	<th>Adresse</th>
	<th>Ort</th>
</tr>
<?php
while ($zeile = mysql_fetch_array($kundenliste)) {
//Zeile holen, bis kein Ergebnis mehr zurückgeliefert wird
	echo "<tr>";   //neue Zeile in der Ausgabe beginnen
	echo "<td>" . $zeile["kundennr"] . "</td>"; 
//Zelle mit Kundennummer ausgeben
	echo "<td>" . $zeile["anrede"] . " " . $zeile["vorname"] . " " . $zeile["nachname"] . "</td>";
	echo "<td>" . $zeile["adresse"] . "</td>";
	echo "<td>" . $zeile["postleitzahl"] . " " . $zeile["ort"] . "</td>";
	echo "</tr>";  //Ausgabezeile beenden
}
?>
</table>

Kommentare (0)

Ihr Kommentar

Name