Heim > Artikel > Backend-Entwicklung > Zurück PHP Schwerwiegender Fehler: Aufruf der undefinierten Funktion mysql_connect()
Lösung für PHP Schwerwiegender Fehler: Aufruf der undefinierten Funktion mysql_connect()
Bei der Verwendung von PHP zum Entwickeln von Websites stoßen wir häufig auf verschiedene Fehler und Ausnahmen. Unter diesen ist PHP Fatal error: Call to undefined function mysql_connect() ein relativ häufiger Fehler. Dieser Fehler tritt normalerweise auf, wenn wir PHP verwenden, um eine Verbindung zur MySQL-Datenbank herzustellen, aber vergessen, die Unterstützung für MySQL in der PHP-Konfigurationsdatei zu aktivieren. In diesem Artikel besprechen wir, wie dieser Fehler behoben werden kann, und geben einige Codebeispiele, um die Problemumgehung zu demonstrieren.
Zunächst müssen wir verstehen, was die Ursache für diesen Fehler ist. Nach PHP 5.5.0 wurde die MySQL-Erweiterung veraltet und in PHP 7.0.0 entfernt. Wenn Sie daher PHP Version 7.0.0 oder höher verwenden und versuchen, die Funktion mysql_connect() zum Herstellen einer Verbindung zu einer MySQL-Datenbank zu verwenden, wird die obige Fehlermeldung angezeigt. Stattdessen sollten wir die Erweiterung mysqli oder PDO verwenden, um eine Verbindung zur MySQL-Datenbank herzustellen.
Der erste Schritt zur Lösung dieses Problems besteht darin, zu bestätigen, dass Sie PHP Version 7.0.0 oder höher verwenden. Sie können die PHP-Version überprüfen, indem Sie php -v
in der Befehlszeile ausführen oder echo PHP_VERSION;
im Code verwenden. php -v
或者在代码中使用 echo PHP_VERSION;
来查看PHP版本。
一旦确认了PHP的版本,我们就可以采取以下两种方式来解决这个错误。
方式一:使用mysqli扩展连接MySQL数据库
示例代码如下:
<?php $servername = "localhost"; $username = "username"; $password = "password"; $database = "dbname"; // 创建连接 $conn = new mysqli($servername, $username, $password, $database); // 检测连接是否成功 if ($conn->connect_error) { die("连接失败: " . $conn->connect_error); } echo "连接成功"; ?>
上述代码中,我们使用了mysqli扩展来连接MySQL数据库。首先,我们声明了相关的连接参数,包括服务器名、用户名、密码以及数据库名。然后,使用 new mysqli()
创建了一个mysqli对象,参数依次为服务器名、用户名、密码以及数据库名。接着,我们使用 $conn->connect_error
来检测连接是否成功,如果连接失败,则输出错误信息;如果连接成功,则输出 "连接成功"。
方式二:使用PDO扩展连接MySQL数据库
示例代码如下:
<?php $servername = "localhost"; $username = "username"; $password = "password"; $database = "dbname"; try { $conn = new PDO("mysql:host=$servername;dbname=$database", $username, $password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "连接成功"; } catch(PDOException $e) { echo "连接失败: " . $e->getMessage(); } ?>
上述代码中,我们使用了PDO扩展来连接MySQL数据库。首先,我们声明了相关的连接参数,包括服务器名、用户名、密码以及数据库名。然后,使用 new PDO()
创建了一个PDO对象,第一个参数是连接字符串,包含了服务器名和数据库名,第二个参数是用户名,第三个参数是密码。接着,我们使用 $conn->setAttribute()
new mysqli()
, um ein MySQLi-Objekt zu erstellen. Die Parameter sind Servername, Benutzername, Passwort und Datenbankname. Als nächstes ermitteln wir mit $conn->connect_error
, ob die Verbindung fehlschlägt. Bei erfolgreicher Verbindung wird eine Fehlermeldung ausgegeben. 🎜🎜Methode 2: Verwenden Sie die PDO-Erweiterung, um eine Verbindung zur MySQL-Datenbank herzustellen. 🎜🎜Der Beispielcode lautet wie folgt: 🎜rrreee🎜Im obigen Code verwenden wir die PDO-Erweiterung, um eine Verbindung zur MySQL-Datenbank herzustellen. Zunächst deklarieren wir die relevanten Verbindungsparameter, einschließlich Servername, Benutzername, Passwort und Datenbankname. Verwenden Sie dann new PDO()
, um ein PDO-Objekt zu erstellen. Der erste Parameter ist die Verbindungszeichenfolge, einschließlich des Servernamens und des Datenbanknamens Passwort. Als nächstes verwenden wir $conn->setAttribute()
, um den Fehlermodus des PDO-Objekts festzulegen und es so einzustellen, dass es eine Ausnahme auslöst. Verwenden Sie abschließend einen Try-Catch-Block, um Ausnahmen zu erfassen, die bei der Verbindung auftreten können. Wenn die Verbindung fehlschlägt, wird eine Fehlermeldung ausgegeben, wenn die Verbindung erfolgreich ist. 🎜🎜Zusammenfassung: 🎜🎜In diesem Artikel haben wir besprochen, wie man den Fehler „Schwerwiegender PHP-Fehler: Aufruf der undefinierten Funktion mysql_connect()“ beheben kann. Wir haben darauf hingewiesen, dass der Grund für diesen Fehler darin liegt, dass die MySQL-Erweiterung in der PHP7.0.0-Version entfernt wurde, und haben zwei Lösungen angeboten, nämlich die Verwendung der MySQL-Erweiterung und der PDO-Erweiterung zum Herstellen einer Verbindung zur MySQL-Datenbank. Ich hoffe, dass die Leser diesen Fehler anhand der obigen Codebeispiele erfolgreich beheben und erfolgreich eine Verbindung zur MySQL-Datenbank herstellen können. 🎜Das obige ist der detaillierte Inhalt vonZurück PHP Schwerwiegender Fehler: Aufruf der undefinierten Funktion mysql_connect(). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!