3

我正在测试一个小型搜索功能:

但是我遇到了一个似乎无法解决的错误。您可以在此处查看 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%从查询中绑定参数,但我不知道这是否真的可能?

我收到错误:

带有消息“SQLSTATE [42000]”的未捕获异常“PDOException”:.....

我可以在错误中看到 '' has been put around test1 %'test1'%

我正在尝试的是可能的,还是我需要做这样的事情?

$query = "SELECT id, name FROM clients WHEE name like :name order by id LIMIT 5";

$sql->execute(array(":name" => "%" .$search . "%"));
4

1 回答 1

6

利用

LIKE CONCAT('%', :name, '%')
于 2014-11-20T23:06:35.857 回答