致命错误:未捕获PDOException:SQLSTATE [42000]

时间:2017-02-15 11:38:39

标签: php

我收到此错误消息,我们将不胜感激。

  

(!)致命错误:未捕获的PDOException:SQLSTATE [42000]:语法   错误或访问冲突:1064您的SQL语法有错误;   查看与您的MariaDB服务器版本对应的手册   在第1行的')'附近使用正确的语法   第96行的index.php

     

(!)PDOException:SQLSTATE [42000]:语法错误或访问   违规:1064您的SQL语法有错误;检查手册   对应于您的MariaDB服务器版本以获得正确的语法   在第96行的index.php第1行附近使用')'

这是代码:

$centroId = $_SESSION['userId'];
$orderby= 'id DESC';
if (isset($_GET['orderby'])){
    $orderby=filter_var($_GET['orderby'],FILTER_SANITIZE_STRING);
}
$where='';
$search='';
if (isset($_GET['cerca'])){
    $search=filter_var($_GET['cerca'],FILTER_SANITIZE_STRING);
    $where=' AND (cognome like "%'.$search.'%" OR nome like "%'.$search.'%" OR id='.$search.') ';
}
$perpage=3; 
$sql='SELECT count(id) FROM utenti2 WHERE centroId=:centroId AND legge_privacy="SI"  '.$where.'';
$result=$db->prepare($sql);
$result=$db->prepare($sql);
$result->bindParam(':centroId', $centroId, PDO::PARAM_INT);
$result->execute();  //line 96

1 个答案:

答案 0 :(得分:0)

尝试在id=$search

周围添加引号
$where=' AND (cognome like "%'.$search.'%" OR nome like "%'.$search.'%" OR id="'.$search.'") ';