2011-03-29 94 views
0

在我的工作场所,我们遇到了某个领域的问题。我们不时需要暂停邮件列表中的某个人,为此,我们只需更新他们的记录以使暂停字段= Y.Mysql查询php变量

这在phpMyAdmin中没有问题,但是当我们使用crud工作人员的页面,有时无法更新,留下Suspend = N的值。查看代码后,我想知道下列行是否可能是问题的根源。

$rs = mysql_query($sql, $conn) or die("Query has Failed : $sql"); 

之前的一切看起来不错,它是脚本的最后一行。现在,我认为这不应该起作用,但确实如此。这将运行查询。我会认为它只会在

mysql_query($sql, $conn) or die("Query has Failed : $sql"); 

但它似乎在大多数情况下工作正常。只有每隔一段时间它都不起作用。这可能是问题的原因吗?最后一点信息,我们使用MyIsam作为引擎。

我将不胜感激您的任何帮助!

+0

您是否收到任何错误或通知信息? – drudge 2011-03-29 18:47:04

回答

0

无论你是否将该返回赋值给一个变量,mysql_query都会返回一个值。按照PHP的运算符优先规则,第一条语句如下所示:

$rs = (
    (mysql_query($sql, $conn)) 
    or 
    (die("Query has Failed...")) 
); 

查询是什么样子的?请记住,即使查询未能按照您的意图完成,mysql_query也可以返回“成功”状态。例如UPDATE ... SET ... WHERE (somefield = value_that_doesnt_exist);。该查询没有做你想要的,但它也不是无效的,所以mysql_query不会返回FALSE,也不会触发or die(...)