| |
| * Link führt ins Internet |
|
| |
Befehl | Version | Beschreibung | Datenbank | Beispiel | Ausgabe |
Befehl
| string mysql_error ( [resource Verbindungs-Kennung] ) |
Version
Beschreibung
Mit mysql_error() kann man sich den Fehlertext einer zuvor ausgeführten Operation zurückgeben lassen. Da MySQL-Fehler nicht zu einer Ausgabe von Fehlermeldungen führen und das Skript normal weiter durchlaufen wird, sollten Sie sich diesen Fehlertext zurückgeben lassen, um den Fehler zu beseitigen. Mit dem optionalen Verbindungsparameter (Verbindungs-Kennung) können Sie eine explizite Verbindungskennung angeben. Falls diese fehlt, wird auf die aktuelle Verbindung zurückgegriffen. Sollte dies auch fehlschlagen, wird versucht, eine Verbindung ohne Angaben von Argumenten (siehe mysql_connect) zu erstellen.
Im unteren Beispiel wurde versucht, auf das Feld "grupp" zuzugreifen, das in der Tabelle "selfphp_funktionen" nicht existent ist. Der Fehlertext wurde danach an eine Funktion zur weiteren Bearbeitung übergeben.
Siehe auch:
. mysql_connect()
. mysql_errno() |
Datenbank
Tabelle selfphp_funktionen
-----------------------------------------------------------------------
| id | gruppe | befehl | version |
-----------------------------------------------------------------------
| 1 | Array-Funktionen | array_count_values | (PHP 4 >= 4.0b4) |
-----------------------------------------------------------------------
| 2 | Variablen-Funktionen | is_double | (PHP 3) |
-----------------------------------------------------------------------
| 3 | Verzeichnis-Funktionen | chdir | (PHP 3, PHP 4) |
-----------------------------------------------------------------------
|
Beispiel
<?PHP
function error($line, $file, $string, $error = ''){
$fehler = '<b>Fehler in Zeile ' . $line . ' in ' .
$file . '</b><br>' . $string . '<br>';
if($error)
$fehler .= '<b>MySQL-Error:</b> '. $error;
die($fehler);
}
/* Datenbankserver - In der Regel die IP */
$db_server = 'localhost';
/* Datenbankname */
$db_name = 'selfphp';
/* Datenbankuser */
$db_user = 'root';
/* Datenbankpasswort */
$db_passwort = 'mega';
/* Erstellt Connect zu Datenbank her */
$db = @mysql_connect($db_server, $db_user, $db_passwort)
or die('Konnte keine Verbindung zur Datenbank herstellen');
$db_select = @mysql_select_db($db_name);
$sql = 'DELETE FROM
selfphp_funktionen
WHERE
grupp = \'Datenbanken\'';
$result = mysql_query($sql)
or error(__LINE__, __FILE__, 'Konnte Einträge nicht löschen', mysql_error());
?>
|
Ausgabe
Fehler in Zeile 25 in /www/users/test_php/index.php
Konnte Einträge nicht löschen
MySQL-Error: Unknown column 'grupp' in 'where clause'
|
|
|
|
|
|
|
|