Nun sind wir über kleine Umwege endlich am Punkt Datenbanken angelangt ..... Um eine SQL-Abfrage mit PHP 3 auszuführen, muß zuerst die Datenbank geöffnet werden (vergleichbar mit dem Zugriff auf eine Datei), dann wird die SQL-Befehlszeile an die Datenbank geschickt, die Antwort der Datenbank wird aufgenommen und schließlichwird die Datenbank-Verbindung wieder geschlossen. Zuerstmüssen wir uns etwas Hintergrundwissen über die SQL-Befehlszeileverschaffen: SQL-Datenbankenbestehen aus 1 oder mehreren sogenannten Tabellen. JederDatensatz der Datenbank ist genau eine Zeile in einer Tabelle.Beispiel Ein Stadtführer für Köln: Die Tabelle Stadt: ID Name Art Note Kommentar 1 POPOKATEPETL Biergarten 1 Sehr schöner Baumbestand
2 CHLODWIG-ECK Biergarten 1 Gute Bratwürste
3 ... ... ... ...
Man kann nun auf eine dieser Tabellen zugreifen,
aber auch Tabellen verküpfen. Wir wollen uns hier der Einfachkeit
halber auf eine einzige Tabelle beschränken.
Es
gibt im wesentlichen vier Abfragemöglichkeiten:
- Auslesen: SELECT
- Einfügen: INSERT
- Überschreiben: UPDATE
- Löschen: DELETE
Will
man z.B. alle Namen, die sich in der Datenbank befinden,
auslesen, so gibt man den SQL-Befehl:
SELECT Name FROM Stadt;
ein.
Will man Name und Art der Kneipe ausgeben, so lautet der
SQL-Befehl:
SELECT Name,Art FROM Stadt;
Soll
schließlich die ganze Spalte Stadt der Tabelle ausgelesen
werden, so genügt der Befehl:
SELECT * FROM Stadt;
Die
auszulesenden Datensätze können nun noch weiter spezifiziert
werden:
SELECT * FROM Stadt WHERE NOTE=1;
gibt
nur die Datensätze aus, die in der Spalte Note eine 1 enthalten.
Sortiert werden können die Datensätze mit:
SELECT * FROM Stadt WHERE NOTE=1 SORT BY Name;
werden.
Neue Datensätze werden folgendermaßen hinzugefügt:
INSERT Stadt (Name,Art,Note,Kommentar) VALUES
('Glenk','Biergarten','1','Gute Bratwürste');
Vorhandene
Datensätze können mit:
UPDATE Stadt SET Note='2',Kommentar='Die Bratwürste lassen nach' WHERE
ID=2;
überschrieben
werden.
Die
obigen SQL-Befehle verwenden wir nun mit PHP 3. Wir wollen
als Beispiel alle Datensätz aus der Tabelle kneipen in der
Datenbank www2 ausgeben.
Das
öffnen einer Datenbankverbindung ist ebenso trivial, wie
eine Datei zu öffnen. Achten Sie vielleicht einmal auf die
Parallelen !
Zuerst
muß eine Verbindung von PHP 3 zum Datenbank-Server (d.h.
dem Computer, auf dem die Datenbank liegt) hergestellt werden:
$verbindung = @mysql_connect("localhost","nobody","");
localhost bedeutet,
wir verbinden uns zum gleichen Computer, auf dem sich auch
der Webserver befindet. Für den Fall, daß Sie sich über
Internet an eine bestehende Datenbank anknüpfen möchten,
so geben Sie den gültigen Hostnamen oder die IP-Nummer ein.
nobody ist
ein gültiger Benutzername für diese Datenbank (dies wurde
vom Datenbank-Verwalter vielleicht so vergeben...).
Die
"" bedeuten, daß dieser Benutzer kein Passwort
benötigt. Wir können überprüfen, ob die Verbindung funktioniert:
if (!$verbindung) {
echo "Keine Verbindung möglich!\n";
exit;
}
Wenn
Sie nun diese Code Snipplets korrekt in eine HTML Seite
mit PHP Code Zeichen ! einfügen, so eröffnen Sie über PHP
eine Datenbankverbindung. Mit dem Befehl netstat
auf dem Datenbankserver oder der Maschine, auf der PHP3
läuft, können Sie die Einzelheiten der Verbindung (Portnummer...)
genau sehen.
Nun
müssen wir die Datenbank nur noch auslesen ....
|