我在 MariaDB 上使用 PHP 中的 PDO 来过滤文本字段包含的行$search_terms。但是,我只检索包含问号的行。看来$search_terms准备好的语句中的内容没有被替换。$query = $db->prepare('SELECT * FROM notes WHERE text LIKE \'%?%\'');$query->execute(array($search_terms));$data['notes'] = $query->fetchAll(PDO::FETCH_ASSOC);为什么 ?
1 回答
慕尼黑的夜晚无繁华
TA贡献1864条经验 获得超6个赞
不确定是否$search_terms要保留一个或多个搜索词。您的查询意味着前者,如果是这样,则使用:
$search_term = "%apple%";
$query = $db->prepare('SELECT * FROM notes WHERE text LIKE ?');
$query->execute($search_term);
$data['notes'] = $query->fetchAll(PDO::FETCH_ASSOC);
请注意,我们将带有通配符的搜索词绑定%到语句中。该语句仅包含一个?占位符。
- 1 回答
- 0 关注
- 84 浏览
添加回答
举报
0/150
提交
取消