2012-07-17 64 views
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>"; 
} 
+2

摆脱'$ nume = mysql_fetch_row($ result);' – 2012-07-17 18:58:56

+0

哪个数组导致问题? – DrinkJavaCodeJava 2012-07-17 19:00:15

回答

6

你获取在$ nume =和mysql_fetch_row的第一行。这拉第一个记录。然后你在while循环中遍历其余的记录。删除第一行。

+0

谢谢亚历克斯......现在正在工作。 – ashah142 2012-07-17 19:00:00

+0

@AashilShah,那么你应该将其标记为答案。 – 2012-07-17 19:01:30

+0

是的。但是我只是发布了它,所以它告诉我等待10分钟。之后我会的。谢谢 – ashah142 2012-07-17 19:02:31

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... 
} 
+0

让你迈克尔...非常感谢... – ashah142 2012-07-17 19:01:41