以下语法是我现有的语法。
$dbh = connect();
$singer = strtolower($_GET["singer"]);
$SQL =
"SELECT *
FROM table
WHERE field1 LIKE ?
ORDER BY field2 ASC";
$sth = $dbh-> prepare ($SQL);
$sth->bindParam (1, $singer);
$sth->execute();
我需要对代码行WHERE field1 LIKE ?
进行哪些更改才能使用通配符%
执行查询?
我已经尝试了WHERE field1 LIKE '%?%'
但是没有用。
我是否必须先加'%
并附加%'
存储在$singer
?
答案 0 :(得分:9)
TRY
$str = "%".$singer."%";
$SQL =
"SELECT *
FROM table
WHERE field1 LIKE ?
ORDER BY field2 ASC";
$sth = $dbh-> prepare ($SQL);
$sth->bindParam (1, $str);
Reference ==>见第3个例子