我遇到以下查询没有产生结果的问题。查询没有任何问题。但它是在PHP脚本中经过许多其他时间和内存消耗指令后运行的。如果我在执行此查询之前限制脚本中执行的操作数,则它可以正常工作。
我如何找出问题所在?如果脚本超出内存或执行时间限制,是否有通知的方法?或者还有其他原因吗?
$query="SELECT * FROM user" or die(mysql_error());
$result=mysql_query($query);
if($result)
{
success();
}
else //error
{
failure();
}
答案 0 :(得分:2)
or die(mysql_error())
:
$query="SELECT * FROM user";
$result=mysql_query($query) or die(mysql_error());
此外,else之前永远不会执行,因为你之前是die()
。
我建议:
$query="SELECT * FROM user";
$result=mysql_query($query);
if($result)
{
success($result);
}
else //error
{
failure(mysql_error());
}
答案 1 :(得分:0)
您正在使用or
字符串。
$query="SELECT * FROM user";
$result=mysql_query($query);
if($result)
{
success();
}
else //error
{
failure();
}
答案 2 :(得分:0)
首先,您可以使用mysql_error()
来检查是否存在mysql错误,如果它存在则返回mysql错误字符串。
其次,要查看您的查询是否返回了任何行,请使用mysql_num_rows($result) > 0
。