2010-03-15 49 views
0

我使用的腳本是如果條件不符合,MySQL正在執行PHP查詢?

if($profile['username'] == $user['username']) { 
    $db->query("UPDATE users SET newcomments = 0 WHERE username = '$user[username]'"); 
    echo "This is a test"; 
} 

(注意:$ DB->查詢是完全一樣的mysql_query)

一些非常奇怪的原因,正在即使執行MySQL查詢定義的條件是假

的「這是一個測試」正常工作,只有當條件滿足時出現,但無論如何表現

的MySQL查詢請告訴我與它的問題呢?

+0

我沒有看到任何東西,請多看看。您可能會涉及其他一些查詢。 – Pentium10 2010-03-15 15:51:47

+0

你可以發佈這件作品所屬的整個腳本嗎?似乎還有另外一個問題,如果回聲沒有完成,查詢就不能執行。 – 2010-03-15 15:52:58

+0

$ db-> query(「UPDATE users SET newcomments = 0 WHERE username ='$ user [username]'」); ---這應該是... WHERE用戶名='{$用戶['用戶名']}'「);否則會生成通知 – Andy 2010-03-15 15:54:56

回答

0

通常,這些問題的答案是在別的地方。也許類似的SQL代碼在別處被調用?

+0

但我試着刪除該腳本,然後查詢未執行 – Ryan 2010-03-15 15:53:17

+0

你知道SQL語句執行成功嗎? – Brandi 2010-03-15 16:33:02

+0

是的,以及臨時添加「或死(mysql_error())」我也測試了PHPMyAdmin中的代碼,它的工作 – Ryan 2010-03-15 16:45:11

0

你的代碼看起來不錯。 嘗試:

echo "<pre>"; 
print_r($profile); 
print_r($user); 

並看看它是否是你所期望的。

0

我很難相信這一點,無論哪種方式嘗試這樣的事情。

$query=""; 
if($profile['username'] == $user['username']) { 
    $query ="UPDATE users SET newcomments = 0 WHERE username = '" . $user[username] . "' "; 
    echo "This is a test"; 
} 

echo $query; 
$db->query($query);