在bindParam中使用LIKE进行MySQL PDO查询

我已经阅读了有关如何编写这些查询的多个示例,但是我正在努力使此特定代码像在使用时运行 bindParam

这是匹配以a开头的用户名的正确方法吗?

$term = "a";

$term = "'$term%'";

$sql = "SELECT username

FROM `user`

WHERE username LIKE :term

LIMIT 10";

$core = Connect::getInstance();

$stmt = $core->dbh->prepare($sql);

$stmt->bindParam(':term', $term, PDO::PARAM_STR);

$stmt->execute();

$data = $stmt->fetchAll();

回答:

不,您不需要内部单引号 $term = "$term%";

您现在正在运行的语句将尝试匹配'a%'而不是匹配a%

bindParam将确保在将所有字符串数据提供给SQL语句时自动正确引用。

以上是 在bindParam中使用LIKE进行MySQL PDO查询 的全部内容, 来源链接: utcz.com/qa/406839.html

回到顶部