0

我有这个从 mysql 填充的数组。但它并没有向我展示第一张唱片。我无法弄清楚问题是什么。应该很简单。这是代码。

$result=mysql_query("SELECT user_instance.instance_name, user_instance.host_name FROM       
dba_account, user_instance WHERE dba_account.account_id = user_instance.account_id AND 
dba_account.account_id = '1'");
echo mysql_error();
$nume = mysql_fetch_row($result);
while($note = mysql_fetch_array($result))
{
    echo "<tr>";
    echo "<td><input type='text' name='instance_name' class='instance_name'
    disabled='disabled' value='$note[instance_name]' size='25' /></td>";
    echo "<td><input type='text' name='host_name' class='host_name' disabled='disabled' 
    value='$note[host_name]' size='25' /></td>";
    echo "</tr>";
}
4

2 回答 2

6

您正在获取 $nume = mysql_fetch_row 中的第一行。这创造了第一条记录。然后,您将遍历 while 循环中的其余记录。删除第一行。

于 2012-07-17T18:58:29.680 回答
4

第一次调用时mysql_fetch_row(),它会将结果资源指针前进到第二个结果。不要那样做。特别是考虑到您没有$nume以任何方式在循环中使用变量,这对您的逻辑是不必要且有害的。

// Don't do this!
//$nume = mysql_fetch_row($result);

// Instead just fetch the loop
while($note = mysql_fetch_array($result)) {
   // etc...
}
于 2012-07-17T18:58:41.120 回答