我正在使用 PHP 版本 5.3 并尝试使用mysql_real_escape_string($unescaped_string)
在我的代码中,但出现错误:
Fatal error: Call to undefined function mysql_real_escape_string()
in /var/www/engine/database.php on line 38
但是我仍然可以连接到数据库。为什么不可用?
我使用的是 PHP 5.3 版本。
Update如中提到的comment https://stackoverflow.com/questions/13856639/mysql-real-escape-string-is-undefined/13856694?noredirect=1#comment58761215_13856694, mysql_
已经自 5.5 起已弃用 https://wiki.php.net/rfc/remove_deprecated_functionality_in_php7#extmysql:
自 PHP 5.5 起,mysql 扩展已被弃用。应改用 mysqli 或 PDO 扩展。弃用已决定于mysql_弃用 https://wiki.php.net/rfc/mysql_deprecation,可以在其中找到有关此决定背后原因的讨论。
and 在 PHP 7 中删除.
mysql_real_escape_string()
是标准部分MySQL 函数“批处理” http://php.net/manual/en/ref.mysql.php如果扩展正确加载,应该始终可以工作。
还有其他的吗mysql_
功能工作? (不应该)
确保您的文件中没有注释掉这一行php.ini
:
extension=mysql.so
明智的做法是使用mysqli http://php.net/manual/en/book.mysqli.php or PDO http://php.net/manual/en/book.pdo.php反而 (mysql_已弃用 http://news.php.net/php.internals/53799),他们都可以为你照顾逃生。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)