我想使用一个简单的查询进行搜索。
此查询在另一个页面和另一个表中正常工作。 我只是复制并粘贴了它。
这是查询
$stmt = $pdo->prepare("SELECT * FROM _all_users WHERE fullname LIKE '%".$q."%' OR mobile LIKE '%".$q."%' ORDER BY time_stamp DESC");
$stmt->execute();
它必须正在工作。但是我收到了这个错误
致命错误:未捕获的PDOException:SQLSTATE [42000]:语法错误或访问冲突:1064您的SQL语法有错误;请参阅附录A。检查与您的MySQL服务器版本相对应的手册以获取正确的语法,以在/ var / www / _am / ajax / getLists中的第1行的'OR mobile LIKE'%848%'ORDER BY time_stamp DESC LIMIT 15 OFFSET 0'附近使用。 php:171堆栈跟踪:#0 /var/www/_am/ajax/getLists.php(171):PDO-> prepare('SELECT * FROM _...')#1 {main}放在/ var / www中/_am/ajax/getLists.php,第171行
有什么主意吗?
答案 0 :(得分:-1)
尝试
$stmt = $pdo->prepare("SELECT * FROM _all_users (WHERE fullname LIKE '%".$q."%' OR mobile LIKE '%".$q."%') ORDER BY time_stamp DESC");
$stmt->execute();
或
$stmt = $pdo->prepare("SELECT * FROM _all_users WHERE (fullname LIKE '%".$q."%' OR mobile LIKE '%".$q."%') ORDER BY time_stamp DESC");
$stmt->execute();