我有以下PDO
與LIKE
使用通配符'%'
匹配的部分結果:PDO LIKE返回所有結果,當用戶輸入%
$value = $_GET["searchValue"];
$dbh = new PDO(DB_DSN, DB_USERNAME, DB_PASSWORD);
$query = $dbh->prepare('SELECT * FROM table WHERE column1 LIKE ? OR column2 LIKE ?');
$query->execute(array("%$value1%","%$value2%"));
我的問題是,當用戶輸入'%'
或'%%%%%'
,它返回的所有值在database
上,即使沒有用%
保存的東西符號con row
。
在此先感謝。
我不想逃避%。基本上,如果用戶在搜索框中輸入%self,它將返回存儲在數據庫中的所有結果,但在Db上沒有包含百分號的單個行,這意味着它應該找到與0匹配的0行。 –
_「我不想逃避%」 - 但如果你希望它是一個字面百分比字符,而不是通配符, – CBroe