2010-03-15 87 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);