Widmen wir uns heute einer anderen üblichen Aufgabenstellung aus der PHP-Anwendungsentwicklung: das Auslesen einer MySQL-Tabelle und das Darstellen der Daten.
Beispieltabelle definieren
Damit wir alle wissen, worum es hier geht, möchte ich die Struktur der MySQL-Tabelle definieren.
Tabelle: albums
-----------------------------------------
| jahr | album | verkauft|
-----------------------------------------
| 1981 | Face Value | 19 Mio. |
| 1982 | Hello, I Must Be Going!| 15 Mio. |
| 1985 | No Jacket Required | 32 Mio. |
| 1987 | 12"ers (Remixes) | 1 Mio. |
| 1989 | …But Seriously | 26 Mio. |
| 1989 | Serious Hits… Live! | 22 Mio. |
| 1993 | Both Sides | 10 Mio. |
| 1996 | Dance Into The Light | 5 Mio. |
| 1998 | ...Hits | 15 Mio. |
| 1999 | A Hot Night In Paris | 1 Mio. |
| 1999 | Tarzan-Soundtrack | 2 Mio. |
| 2002 | Testify | 5 Mio. |
| 2003 | Bärenbrüder-Soundtrack | |
| 2004 | Platinum Collection | 1 Mio. |
-----------------------------------------
Nachdem wir eine solche Tabelle erstellt haben (mit phpmyadmin z.B.), ihr den Namen albums gegeben haben und die Daten eingepflegt haben, wollen wir diese in unsere Webseite anzeigen. Um uns nicht mit Design zu beschäftigen, geben wir die Daten ohne Schnickschnack aus.
Unsere Webseite
Die Webseite sieht wie zu Anfang der Lektion 1 aus:
<?php
include_once('../quibui/quibui.php');
?>
<html>
<body>
</body>
</html>
Datenbanktabelle auslesen und anzeigen
Wir brauchen die Funktion
QB_TABLE2ARRAY(p1, p2, p3, p4)
Wir verwenden jetzt nur p1. P1 nimmt den Namen der Tabelle.
QB_TABLE2ARRAY('albums')Jetzt haben wir den gesamten Inhalt der Tabelle zur Verfügung und können ihn darstellen. Dabei nutzen wir die Datenstruktur des assoziativen Arrays und gehen jeden einzelnen Datensatz durch. Unsere Datei sieht also wie folgt aus:
<?php
include_once('../quibui/quibui.php');
?>
<html>
<body><?php
</body>
foreach(QB_TABLE2ARRAY('albums') as $album) {
echo $album['jahr'] . " " . $album['album'] . "<br>";
}
?>
</html>
Fertig
So werden Tabelleninhalte mit QuiBui ausgelesen. Das Ergebnis sieht z.B. so aus:
1981 Face Value
1982 Hello, I Must Be Going!
1985 No Jacket Required
1987 12"ers (Remixes)
1989 ...But Seriously
1989 Serious Hits? Live!
1993 Both Sides
1996 Dance Into The Light
1998 ...Hits
1999 A Hot Night In Paris
1999 Tarzan-Soundtrack
2002 Testify
2003 Bärenbrüder-Soundtrack
2004 Platinum Collection