我有一个查询如下,我得到了响应,由于某种原因,while循环永远不会捕获返回的第一组状态。如果MySQL返回状态I,S,N
,它将只处理S
和N
。如果它返回S,N
,则只会处理N
。
$sql = "SELECT COUNT(*) as cnt, status
FROM itemInterest
GROUP BY status
ORDER BY STATUS";
echo $sql;
$rs = mysql_query($sql);
while($row = mysql_fetch_array($rs))
{
echo $row['status'];
if($row['status'] == "N") {
$noResponse = $row['cnt'];
}
if($row['status'] == "S") {
$saved = $row['cnt'];
}
if($row['status'] == "I") {
$interested = $row['cnt'];
}
if($row['status'] == "X") {
$noThanks = $row['cnt'];
}
}
答案 0 :(得分:0)
您有两组括号$rs = mysql_query(($sql));
删除一组$rs = mysql_query($sql);
将mysql_query() or die(mysql_error())
添加到mysql_query()
也是为了检查错误。
您正在使用已弃用的MySQL库,该库将从未来的PHP版本中删除。
考虑使用mysqli
with prepared statements或PDO与prepared statements。