2010-12-23 198 views
0

请给我一只手从数据库中检索数据并显示它。从数据库检索数据

我学习,这是从推进:(

抱着我,我有:

$result = mysql_query($sql); 
    $num_reg = mysql_num_rows($result); 
    echo $num_reg; // this shows 3 

    while($row = mysql_fetch_assoc($result)) 
     { 

     foreach($row as $value) 
     { 


    //Now I need to operate with the rows values. 

echo $row['PHONE']; 

但是这不是打印的电话号码,将它们打印5次,每次

什么我做错了吗?

非常感谢

回答

3

调用一次删除foreach

while($row = mysql_fetch_assoc($result)) 
{ 
echo $row['PHONE']; 
echo $row['NAME']; 
echo $row['OTHER_FIELD']; 
} 
1

你不需要的foreach在这种情况下

while($row = mysql_fetch_assoc($result)) 
{ 
    echo $row['PHONE']; 
} 

可能是你$row有2个元素,里面foreachecho $row['PHONE']为每一个元素

1

做的print_r ($ row)和你的foreach循环中的print_r($ value)。 然后问你为什么在$ row元素的循环中回显$ row。

1

在while()循环内部不需要第二个foreach()循环来处理这些值。你在这里做的是循环遍历行,然后遍历这些值,但如果你已经通过$ row变量访问这些值,则不需要再次循环。 5次电话号码的事实表明你的桌子上有5列。

一个例子 - 删除foreach()循环:

while($row = mysql_fetch_assoc($result)){ 
    echo $row['PHONE']; 
    echo $row['NAME']; 
    echo "<br />"; 
} 

我猜你有一个名为“名”变量,但如果不只是将其交换为一个你必须。最后一个回声只是打印一个新行以便于阅读。

+0

非常感谢所有人,现在我可以继续! – user523129 2010-12-23 15:03:41