Hinweise zum Umgang mit MySQL-Fehler

Sie verwenden die mysqli Funktionen der PHP-Sprache, wie zum Beispiel mysqli_connect und mysqli_query, mit der MySQL-Datenbank zu interagieren. Die Dinge werden manchmal schief gehen, wenn Sie die Anweisungen verwenden. Sie können einen Fehler in Ihrer Eingabe machen, wie zum Beispiel einen Datenbanknamen falsche Eingabe. Manchmal entstehen Probleme, die man nicht vermeiden kann, wie die Datenbank oder das Netzwerk ist nach unten.

Sie müssen Code in Ihrem Skript die Fehlersituationen behandelt.

Sie wollen in der Regel ihre Fehlerbehandlung anschaulicher zu machen, mit der Behandlung von Problemen bei der Entwicklung zu helfen, aber Sie wollen nicht auf die zusätzlichen Informationen an die Öffentlichkeit angezeigt.

Zum Beispiel: Angenommen, dass Sie ein Konto mit dem Namen root den Zugriff auf die Datenbank verwenden und Sie einen Tippfehler machen, wie in den folgenden Aussagen:

$ Host = "localhost" - $ user = "rot" - $ password = "" - $ cxn = mysqli_connect ($ host,$Benutzer,$Passwort)

Weil Sie "rot" und nicht als "root" eingeben können, finden Sie eine Warnmeldung ähnlich wie diese:

Warnung: Zugriff verweigert für Benutzer: 'rot @ localhost' (mit Passwort: Nein) ...

Die vorhergehende Fehlermeldung enthält die Informationen, die Sie benötigen, um das Problem herauszufinden - es zeigt Ihren Kontonamen, die den Tippfehler enthält.

Doch nach Ihrem Skript ausgeführt wird und die Kunden es verwenden, möchten Sie nicht Ihre Benutzer eine technische Fehlermeldung zu sehen, dass die Benutzer-ID zeigt. Sie wollen die PHP-Fehler auszuschalten oder sie zu einer Fehlerprotokolldatei senden. Sie könnten dann ein verwenden sterben Anweisung um das Skript zu beenden und eine höfliche Nachricht an den Benutzer angezeigt werden, wie folgt:

$ Cxn = mysqli_connect ($ host,$Benutzer,$Passwort) oder die ( ". Der Katalog ist im Moment nicht verfügbar Bitte versuchen Sie es später noch einmal.") -

Wenn ein mysqli_query () Funktion fehlschlägt, MySQL gibt eine Fehlermeldung, die Informationen über die Ursache des Fehlers enthält. Allerdings wird diese Meldung nicht angezeigt, wenn Sie speziell es angezeigt werden soll. Auch hier können Sie diese Nachrichten sehen möchten, wenn Sie das Skript gerade entwickeln, aber man kann sie nicht an die Öffentlichkeit angezeigt werden sollen. Sie können die MySQL-Fehler angezeigt werden, die mit der folgenden Funktion zurückgegeben wird:

mysqli_error ($ cxn)

Zum Beispiel könnten Sie die Funktion in Ihrem Code enthalten, wie folgt:

$ Query = "SELECT * FROM Cust" - $ result = mysqli_query ($ cxn, $ query) oder die ( "Fehler:" .mysqli_error ($ cxn)) -

In diesem Beispiel, wenn der Funktionsaufruf aus, der sterben Anweisung zeigt die MySQL-Fehler, die so etwas wie das sein könnte:

Fehler: Table 'catalog.cust' existiert nicht

Gelegentlich können Sie zusätzliche Aktionen durchzuführen, wenn die Funktion fehlschlägt, wie Variablen zu löschen oder die Datenbankverbindung schließen. Sie können solche Aktionen durchführen, indem Sie eine bedingte Anweisung:

(! $ Result = mysqli_query ($ cxn, $ query)), wenn {echo mysqli_error ($ cxn) -unset ($ auth) -exit () -}

Wenn der Funktionsaufruf fehlschlägt, die Aussagen in der ob Block ausgeführt. Das Echo Anweisung zeigt die MySQL-Fehler von der Funktion zurückgegeben. Eine Variable wird entfernt, und das Skript beendet.

Beachten Sie die ! (Ausrufezeichen) in der ob Erklärung. ! Mittel "nicht". In anderen Worten, die ob Aussage ist wahr, wenn die Zuordnung Aussage nicht wahr ist.

» » » Hinweise zum Umgang mit MySQL-Fehler