Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.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 在SQL查询中使用WHERE子句会导致错误_Php_Sql - Fatal编程技术网

Php 在SQL查询中使用WHERE子句会导致错误

Php 在SQL查询中使用WHERE子句会导致错误,php,sql,Php,Sql,如果我使用下面的代码,它是有效的 $query = 'SELECT * FROM messages ORDER BY date DESC LIMIT ? , ?'; 但如果我使用WHERE子句来过滤确切的用户数据,它会显示错误 $query = 'SELECT * FROM messages WHERE member_name='.$userid.' ORDER BY date DESC LIMIT ? , ?'; 下面是全部错误 Fatal error: Uncaught Error:

如果我使用下面的代码,它是有效的

 $query = 'SELECT * FROM messages ORDER BY date DESC LIMIT ? , ?';
但如果我使用WHERE子句来过滤确切的用户数据,它会显示错误

 $query = 'SELECT * FROM messages WHERE member_name='.$userid.' ORDER BY date DESC LIMIT ? , ?';
下面是全部错误

Fatal error: Uncaught Error: Call to a member function execute() on bool in /home/customer/www/sitename.com/public_html/user/notifications/lib/DataSource.php:82 Stack trace: #0 /home/customer/www/sitename.com/public_html/user/notifications/Model/Pagination.php(41): Phppot\DataSource->select('SELECT * FROM m...', 'ii', Array) #1 /home/customer/www/sitename.com/public_html/user/notifications/index.php(7): Phppot\Pagination->getPage() #2 {main} thrown in /home/customer/www/sitename.com/public_html/user/notifications/lib/DataSource.php on line 82
有趣的是,我在另一个网站的WHERE子句中使用了相同的脚本。 但什么会导致这样的错误呢? $userid字符串有值,已经检查过,所有包含/连接的php文件也在工作


代码来自

用以下方法解决它

$query = "SELECT * FROM messages WHERE member_name='$userid' ORDER BY date DESC LIMIT ? , ?";

请将您的域名成员名称更改为其他名称。 我认为member_name是一个类似mysql中的member的函数。
更改字段名并重试。

除非您收到MySQL的错误消息,告诉您该如何回答您的问题,否则不要这样做?我在那个网站上找不到给定的代码。您共享的代码除了显示变量定义外,也没有显示任何其他内容-是否有更多的代码要共享?不过,请注意,您的第二个查询已打开,可以进行SQL注入。它不应该这样使用,尽管这仍然是非常脆弱的代码。有没有什么好的理由像那样注入$userid而不是通过参数?