Maison  >  Article  >  base de données  >  Pourquoi mes fonctions mysql_* ne fonctionnent-elles pas après la mise à niveau vers PHP 5.5.0 ?

Pourquoi mes fonctions mysql_* ne fonctionnent-elles pas après la mise à niveau vers PHP 5.5.0 ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-05 15:56:02170parcourir

Why Are My mysql_* Functions Not Working After Upgrading to PHP 5.5.0?

Difficulté à utiliser les fonctions mysql_* après la mise à niveau de PHP

Les utilisateurs effectuant une mise à niveau vers PHP 5.5.0 peuvent rencontrer des problèmes lorsqu'ils tentent d'utiliser les fonctions mysql_*, car ces fonctions sont obsolètes dans cette version.

Comprendre le problème

L'une des erreurs courantes rencontrées est "Obsolète : mysql_real_escape_string()". Cela indique que la fonction mysql_real_escape_string() n'est plus prise en charge. Tenter de le remplacer par mysqli_real_escape_string() entraîne une autre erreur : "Avertissement : mysqli_real_escape_string() attend exactement 2 paramètres, 1 étant donné".

Résoudre le problème

À Pour résoudre ce problème, il est recommandé de passer à l'utilisation de l'extension mysqli au lieu de l'extension mysql. Cela nécessite des mises à jour de votre code PHP pour utiliser les fonctions mysqli.

Code PHP révisé

Voici une version révisée du code fourni à titre d'exemple :

<code class="php"><?php

require_once("includes/session.php");
require_once("connections/connection.php");
require_once("includes/functions.php");

// ... (remainder of the PHP code)

$connection = mysqli_connect("host", "my_user", "my_password", "my_db");

// ... (remainder of the PHP code)

$username = mysqli_real_escape_string($connection, $username);
$password = mysqli_real_escape_string($connection, $password);

// ... (remainder of the PHP code)

// ... (mysqli alternative not shown in detail)

if (isset($connection)) {
    mysqli_close($connection);
}

?></code>

Conclusion

La mise à niveau vers PHP 5.5.0 nécessite des ajustements de compatibilité dans le code PHP existant. La transition vers l'extension mysqli et l'utilisation de ses fonctions sont une solution efficace pour résoudre les problèmes liés aux fonctions mysql_* obsolètes.

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