Maison  >  Article  >  développement back-end  >  Erreur fatale PHP : appel à une fonction non définie mysql_connect()

Erreur fatale PHP : appel à une fonction non définie mysql_connect()

PHPz
PHPzoriginal
2023-08-25 22:27:221655parcourir

解决PHP Fatal error: Call to undefined function mysql_connect()

Solution à l'erreur fatale PHP : appel à la fonction non définie mysql_connect()

Lorsque nous utilisons PHP pour développer des sites Web, nous rencontrons souvent diverses erreurs et exceptions. Parmi eux, PHP Fatal error: Call to undefined function mysql_connect() est une erreur relativement courante. Cette erreur se produit généralement lorsque nous utilisons PHP pour nous connecter à la base de données MySQL, mais oublions d'activer la prise en charge de MySQL dans le fichier de configuration PHP. Dans cet article, nous verrons comment résoudre cette erreur et donnerons quelques exemples de code pour illustrer la solution de contournement.

Tout d’abord, nous devons comprendre quelle est la cause de cette erreur. Après PHP 5.5.0, l'extension MySQL a été obsolète et supprimée dans PHP 7.0.0. Par conséquent, si vous utilisez PHP version 7.0.0 ou supérieure et essayez d'utiliser la fonction mysql_connect() pour vous connecter à une base de données MySQL, le message d'erreur ci-dessus apparaîtra. Au lieu de cela, nous devrions utiliser l'extension mysqli ou PDO pour nous connecter à la base de données MySQL.

La première étape pour résoudre ce problème est de confirmer que vous utilisez PHP version 7.0.0 ou supérieure. Vous pouvez vérifier la version de PHP en exécutant php -v sur la ligne de commande ou en utilisant echo PHP_VERSION; dans le code. 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()

Une fois la version PHP confirmée, nous pouvons adopter les deux manières suivantes pour résoudre cette erreur.

Méthode 1 : Utilisez l'extension mysqli pour vous connecter à la base de données MySQL

L'exemple de code est le suivant : 🎜rrreee🎜Dans le code ci-dessus, nous utilisons l'extension mysqli pour nous connecter à la base de données MySQL. Tout d'abord, nous déclarons les paramètres de connexion pertinents, notamment le nom du serveur, le nom d'utilisateur, le mot de passe et le nom de la base de données. Ensuite, utilisez new mysqli() pour créer un objet mysqli, et les paramètres sont le nom du serveur, le nom d'utilisateur, le mot de passe et le nom de la base de données. Ensuite, nous utilisons $conn->connect_error pour détecter si la connexion échoue. Si la connexion échoue, un message d'erreur est généré ; si la connexion est réussie, "Connexion réussie" est affichée. 🎜🎜Méthode 2 : Utilisez l'extension PDO pour vous connecter à la base de données MySQL 🎜🎜L'exemple de code est le suivant : 🎜rrreee🎜Dans le code ci-dessus, nous utilisons l'extension PDO pour nous connecter à la base de données MySQL. Tout d'abord, nous déclarons les paramètres de connexion pertinents, notamment le nom du serveur, le nom d'utilisateur, le mot de passe et le nom de la base de données. Ensuite, utilisez new PDO() pour créer un objet PDO. Le premier paramètre est la chaîne de connexion, y compris le nom du serveur et le nom de la base de données. Le deuxième paramètre est le nom de l'utilisateur et le troisième paramètre est le nom de la base de données. mot de passe. . Ensuite, nous utilisons $conn->setAttribute() pour définir le mode d'erreur de l'objet PDO et le configurer pour qu'il lève une exception. Enfin, utilisez un bloc try-catch pour capturer les exceptions qui peuvent se produire dans la connexion. Si la connexion échoue, un message d'erreur est affiché ; si la connexion réussit, "Connexion réussie" est affichée. 🎜🎜Résumé : 🎜🎜Dans cet article, nous avons expliqué comment résoudre l'erreur fatale PHP : appel à l'erreur mysql_connect() de la fonction non définie. Nous avons souligné que la raison de cette erreur est que l'extension MySQL a été supprimée dans la version PHP7.0.0 et avons proposé deux solutions, à savoir utiliser l'extension mysqli et l'extension PDO pour se connecter à la base de données MySQL. Grâce aux exemples de code ci-dessus, j'espère que les lecteurs pourront résoudre avec succès cette erreur et se connecter avec succès à la base de données MySQL. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn