當我添加WHERE語句時,我的select語句不起作用。PHP PDO SELECT涉及VARCHAR的SQL在涉及WHERE語句時不起作用
下面的代碼返回的東西:
$sql = "SELECT * FROM statement";
$stmt = $dbconn->prepare($sql);
$stmt->execute(array(':words'=>$words));
但這並不:
$sql = "SELECT * FROM statement WHERE words='(:words)'";
$stmt = $dbconn->prepare($sql);
$stmt->execute(array(':words'=>$words));
我不知道爲什麼。你可能會認爲這是因爲沒有聲明對象,其「言」元素等於$的話,但...我可以運行這個循環與第一碼:
foreach ($stmt as $s)
{
var_dump($words, $s['words'], ($words==$s['words']));
echo "<br>";
}
,這裏是我的輸出:
string(4) "test" string(5) "test1" bool(false)
string(4) "test" string(5) "test2" bool(false)
string(4) "test" string(4) "test" bool(true)
那麼這是怎麼回事?我不知道爲什麼這不起作用。請讓我知道我是否做了一件非常愚蠢的事情。
那是什麼?(:(字))?你在哪裏得到它?爲什麼你不使用正確的語法? – 2013-03-25 03:10:20
爲什麼不直接把變量放在你的sql查詢中?這很難嗎? – 2013-03-25 03:21:25
感謝您的幫助! – george 2013-03-25 03:25:09