Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php mysql\u real\u escape\u string()出错_Php_Mysql - Fatal编程技术网

Php mysql\u real\u escape\u string()出错

Php mysql\u real\u escape\u string()出错,php,mysql,Php,Mysql,因此,我正在运行这个链接中的代码进行测试,试图了解会话是如何工作的。 我收到一条错误信息 致命错误:未捕获错误:调用未定义函数 mysql_real_escape_string()in:20堆栈跟踪:#0 :include()#1{main}在第20行中抛出 这与login.php文件中的mysql\u real\u escape\u string()有关,但我不确定它出了什么问题。因为它可以防止MySQL注入,所以这个函数在教程发布后被重命名了吗 编辑:这不是重复,因为我不是在问如何防止My

因此,我正在运行这个链接中的代码进行测试,试图了解会话是如何工作的。

我收到一条错误信息

致命错误:未捕获错误:调用未定义函数 mysql_real_escape_string()in:20堆栈跟踪:#0 :include()#1{main}在第20行中抛出

这与
login.php
文件中的
mysql\u real\u escape\u string()
有关,但我不确定它出了什么问题。因为它可以防止MySQL注入,所以这个函数在教程发布后被重命名了吗


编辑:这不是重复,因为我不是在问如何防止MySQL注入,我是在问该函数是否已被删除

MySQL\uu自5.5以来已被弃用:

自PHP5.5以来,mysql扩展一直被弃用。应该改用mysqli或PDO扩展。在mysql_deprecation中已经决定了这个决定,在这里可以找到关于这个决定背后原因的讨论

并在PHP7中删除

mysql\u real\u escape\u string()
是mysql函数“batch”的标准部分,如果正确加载了扩展,它应该始终工作

还有其他mysql_uu函数工作吗?(不应该)

确保在php.ini中未注释此行:

extension=mysql.so

另外,明智的做法是使用mysqli或PDO(不推荐使用mysql),它们都可以为您解决转义问题。

这并不能保护您。使用事先准备好的陈述。也很可能您使用的是php版本7+。这是一个塞翁失马的祝福。自从教程被发布后,MySQL扩展被删除了。你正在使用,应该使用OK,谢谢你的关注。