Aktueller Standort: Startseite> Neueste Artikel> Methode zur Lösung des tödlichen PHP

Methode zur Lösung des tödlichen PHP

M66 2025-10-01

So lösen Sie PHP Fatal Fehler: Rufen Sie auf undefinierte Funktion mySQL_Query () auf.

Bei der Verwendung von PHP für die Website -Entwicklung stoßen Entwickler häufig auf einige häufige Fehler. Unter ihnen ist der PHP -fataler Fehler: Rufen Sie die undefinierte Funktion mySQL_query () relativ typisch an . Dieser Fehler wird normalerweise durch die Nicht -Verwendung der Datenbankerweiterungsfunktion verursacht.

Ursachen des Fehlers

Beginnend mit PHP 5.5 wurden die Funktionserie von MySQL_* veraltet und in Php 7 vollständig entfernt. Wenn der Projektcode daher noch eine alte Funktion wie MySQL_Query () verwendet, wird der obige Fehler verursacht.

Um dieses Problem zu lösen, müssen Sie stattdessen die offiziell empfohlene MySQLI- oder PDO -Erweiterungsbibliothek verwenden.

Lösungen mithilfe von MySQLI -Erweiterung

<?php
$conn = new mysqli('localhost', 'username', 'password', 'database');
if ($conn->Connect_error) {
    Die (&#39;Connect hat keine Verbindung zur Datenbank hergestellt:&#39;. $ conn-> connect_error);
}

$ sql = &#39;select * von Benutzern&#39;;
$ result = $ conn-> query ($ sql);

if ($ result-> num_rows> 0) {
    while ($ row = $ result-> fetch_assoc ()) {
        Echo &#39;Benutzername:&#39;. $ row [&#39;Benutzername&#39;]. &#39;, E -Mail:&#39;. $ row [&#39;E -Mail&#39;]. &#39;&#39;<br> &#39;;
    }
} anders {
    echo &#39;kein Benutzer gefunden&#39;;
}

$ conn-> close ();
?>

Dieser Code zeigt, wie Sie MySQLI verwenden, um eine Verbindung herzustellen, eine Abfrage auszuführen und die Ergebnisse auszugeben. Wenn die Verbindung fehlschlägt, wird eine Aufforderung zur Nachricht zurückgegeben.

Lösungen mit PDO -Erweiterung

<?php
$dsn = 'mysql:host=localhost;dbname=database';
$username = 'username';
$password = 'password';

try {
    $conn = new PDO($dsn, $username, $password);
    $conn-> setAttribute (pdo :: attr_errmode, pdo :: errmode_exception);

    $ sql = &#39;select * von Benutzern&#39;;
    $ stmt = $ conn-> query ($ sql);

    while ($ row = $ stmt-> fetch (pdo :: fetch_assoc)) {
        Echo &#39;Benutzername:&#39;. $ row [&#39;Benutzername&#39;]. &#39;, E -Mail:&#39;. $ row [&#39;E -Mail&#39;]. &#39;&#39;<br> &#39;;
    }
} catch (pdoException $ e) {
    Echo &#39;konnte keine Verbindung zur Datenbank herstellen:&#39;. $ e-> getMessage ();
    Ausfahrt;
}

$ conn = null;
?>

Die Verwendung von PDO kann nicht nur MySQL verarbeiten, sondern unterstützt auch mehrere Datenbanken, die skalierbarer und bequemer sind, um Fehler über Ausnahmemechanismen zu behandeln.

Zusammenfassen

Bei der Begegnung mit einem PHP -tödlichen Fehler: Rufen Sie auf die undefinierte Funktion mySQL_Query () Fehler auf, das Problem liegt normalerweise daran, dass die alte MySQL -Erweiterung in der PHP -Version nicht mehr unterstützt wird. Die Lösung besteht darin, den Code in MySQLI oder PDO zu migrieren, was nicht nur die Fehlerberichterstattung vermeidet, sondern auch leistungsstärkere Funktionen und bessere Sicherheit hat.

Wenn Ihr Projekt weiterhin die alte MySQL_* -Funktion verwendet, wird empfohlen, die neue Erweiterung so schnell wie möglich zu aktualisieren, um die Kompatibilität und die Wartbarkeit sicherzustellen.