| |
| * Link führt ins Internet |
|
| |
Jetzt sollten Sie prüfen, ob eine Verbindung zum MySQL-Server aufgebaut werden kann und via PHP auf vorhandene Datenbanken zugegriffen werden kann.
<?php
$db = mysql_connect ("localhost", "matthias", "geheim")
or die ("keine Verbindung möglich: " .mysql_error());
echo "Verbindung erfolgreich";
mysql_close ($db);
?>
|
Die erste Zeile stellt eine Verbindung zum MySQL-Server her. Hierbei wird der Name des Hosts, der Benutzername und das Passwort übergeben. Auf einem lokalen Rechner verwenden Sie als Hostname localhost. Der Name kann zusätzlich die Portnummer enthalten. Der Standardwert für die Portnummer lautet 3306. Mit Portnummer hättte die Skriptzeile folgende Struktur:
$db = mysql_connect ("localhost:3306", "matthias", "")
or die ("keine Verbindung möglich: " .mysql_error());
Sollte es zu Problemen beim Verbindungsaufbau kommen, wird die Ausgabe keine Verbindung möglich: Fehlercode sein.
| Achtung: Die Verbindungsvariable $db sollte immer gesetzt werden ,um mit ihrer Hilfe jederzeit auf die bestehende Verbindung zum MySQL-Server zugreifen zu können und beispielsweise die Verbindung zu beenden: mysql_close($db). Der Bezeichner für die Verbindungsvariable kann natürlich frei gewählt werden, anstatt $db würde sich auch $db_verbindung oder $server eignen. |
Sollte der Verbindungsaufbau erfolgreich sein, erhalten Sie die Ausgabe Verbindung erfolgreich. Anschließend wird mit der letzten Skriptzeile dafür gesorgt, dass die Verbindung zum MySQL-Server wieder beendet wird.
Sie sollten folgendes Skript testen:
<?php
$db = mysql_connect ("localhost", "matthias", "")
or die ("keine Verbindung möglich: " .mysql_error());
// Erfassen sämtlicher Datenbanken
$datenbanken = mysql_list_dbs($db);
// Anzahl von Datenbanken
$anzahl = mysql_num_rows($datenbanken);
// Auflisten sämtlicher Datenbanken
for ($i = 0; $i < $anzahl; $i++) {
echo mysql_result($datenbanken, $i);
echo "<br>";
}
// Verbindung beenden
mysql_close ($db);
?>
|
Die Ausgabe sollte sich in etwa, wie folgt darstellen:
cdcol
mysql
praxisbuch
test
webauth
|
Fehlermeldungen unterdrücken
Wir hätte da noch einen speziellen Typ für Sie. Wenn die Funktion mysql_connect() fehlschlägt, wird eine Fehlermeldung erzeugt und ausgegeben, wie dies bei den meisten anderen PHP-Funktionen der Fall ist. Auch in diesem Fall können Sie diese Fehlermeldung unterdrücken, indem Sie vor die Funktionen das @-Zeichen setzen. Das ist vor allem sinnvoll, wenn Sie eine eigene Fehlerbehandlung vornehmen wollen.
Beispiel
<?php
if (@mysql_connect ("localhost", "matthias", "")) {
echo "Datenbankverbindung: OK!";
} else {
echo "Datenbankverbindung: Fehler!";
}
?>
|
Sollten Sie eine Verbindungsvariable verwenden, lässt sich eine Fehlerbehandlung auch wie folgt realisieren:
<?php
$db = @mysql_connect ("localhost", "matthias", "") or die ("keine Verbindung möglich: " .mysql_error());
?>
|
Diese Zeile versucht eine Datenbankverbindung aufzubauen und erzeugt im Erfolgsfall eine ID, auf die Sie im weiteren Verlauf des Skripts mit der Variablen $db zugreifen können. Lässt sich die Verbindung nicht aufbauen, gibt die Funktion die() eine Fehlermeldung aus und bricht die Bearbeitung des Skripts ab.
|
|
|
|
|
|
|