PHP 升级后使用 mysql_* 函数遇到困难
升级到 PHP 5.5.0 的用户在尝试使用 mysql_* 函数时可能会遇到问题,因为这些函数在此版本中已被弃用。
了解问题
遇到的常见错误之一是“已弃用:mysql_real_escape_string()”。这表明不再支持 mysql_real_escape_string() 函数。尝试将其替换为 mysqli_real_escape_string() 会导致另一个错误,“警告:mysqli_real_escape_string() 需要恰好 2 个参数,给定 1 个”。
解决问题
至要解决此问题,建议过渡到使用 mysqli 扩展而不是 mysql 扩展。这需要更新您的 PHP 代码以利用 mysqli 函数。
修订的 PHP 代码
以下是作为示例提供的代码的修订版本:
<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>
结论
升级到 PHP 5.5.0 需要对现有 PHP 代码进行兼容性调整。过渡到 mysqli 扩展并利用其功能是解决与已弃用的 mysql_* 函数相关问题的有效解决方案。
以上是为什么升级到 PHP 5.5.0 后我的 mysql_* 函数无法运行?的详细内容。更多信息请关注PHP中文网其他相关文章!