我在 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 關注
- 133 瀏覽
添加回答
舉報
0/150
提交
取消