我正在测试一个小的搜索功能:
但是我遇到了一个似乎无法解决的错误。您可以在此处查看PDO查询:
$search = "test1"; //later to be changes to $_POST ['search'];
$sql = "SELECT id, name FROM clients WHEE name like %:name% order by id LIMIT 5";
$stm = $db->prepare ( $sql );
$stm->bindParam ( ":name" , $search);
$result = $stm->execute ();
如您所见,我正在尝试从查询中绑定参数%:name%
,但我不知道这是否实际上可行吗?
我收到错误:
未捕获的异常'PDOException',消息为'SQLSTATE [42000]:.....
而且我可以看到在test1%'test1'%中加上了''的错误
我正在尝试的可能吗,还是我需要做这样的事情?
$query = "SELECT id, name FROM clients WHEE name like :name order by id LIMIT 5";
$sql->execute(array(":name" => "%" .$search . "%"));
使用
LIKE CONCAT('%', :name, '%')