0

我有以下代码:

while ($var1 == $var2)
{
    $sql = “SELECT disabled FROM MYTABLE WHERE VAR2=’$var2’”;
    $r = mysql_query($sql);
    while ($row = mysql_fetch_assoc($r)) 
    {
        // do something
    }
}

我的问题是 $sql 检索十行:其中 4 行有数据,其余为空。

由于第一行是空的,第二行永远不会输入。

但是我需要输入它,我该怎么办?

在示例代码中,我使用的是 MySQL,但我可以使用 TSQL。

非常感谢

4

2 回答 2

0

如果您在“mysql_query”没有任何结果时遇到问题,只需添加一个条件:

$result = mysql_query($SQL);
while ($result && $row = mysql_fetch_array($result)) {
  // do something
}

手册说... mysql-fetch-assoc “不鼓励使用这个扩展”

于 2012-10-22T16:10:44.870 回答
0

您可以先检查总行数。

while (mysql_num_rows($r) > 0 && $row = mysql_fetch_assoc($r)) 
{
    // do something
}

抱歉,这不起作用,请尝试以下方法。

if(mysql_num_rows($r) > 0 ) {
    while ($row = mysql_fetch_assoc($r)) 
    {
       // do something
    }
}
于 2012-10-22T16:21:42.707 回答