1
假設$search
是來自用戶輸入的字符串,並且$db
是有效的PDO引用。PHP PDO MySQL LIKE和預準備語句
從我個人理解,下面塊是優選的,應該工作:
$imageStatement = $db->prepare("SELECT
images.whatever
FROM images
WHERE images.title LIKE :titleSearch OR images.description LIKE :descriptionSearch");
$imageStatement->bindValue(':titleSearch', "%{$search}%");
$imageStatement->bindValue(':descriptionSearch', "%{$search}%");
$images = $imageStatement->fetchAll();
它還給0的結果,而下面還給預期收益:
$search = $db->quote("%{$search}%");
$images = $db->query("SELECT
images.whatever
FROM images
WHERE images.title LIKE {$search} OR images.description LIKE {$search}")->fetchAll();
我是什麼做錯了?
yikes - 我是一個白癡 - 只是忘了執行 - 我會盡快接受(6分鐘)。謝謝 – momo
@BigMoMo沒問題。我們都犯這些錯誤。 – Kyle