While循环使用PHP和MySQL服务器


While Loop using PHP with a MySQL server

我有一个数据库(SQL),表"Staff"中有两条记录。我需要使用PHP在网页上显示这些记录的内容。

<html>
<head>
<title>CES Staff details</title>
</head>
<body>
**code emitted**
<?php
$row = mysql_fetch_array($result) ; 
$looping = 1;
$i = $row.length;
while ($looping <= $i)  
    {
        echo $row["Name"].", Room ".$row["Room"].", Tel ".$row["Telephone"] ;
        $looping++;
    }
?>
</body>
</html>

如何正确更改while循环,使其在页面上显示这两条记录。

谢谢!

mysql_fetch_array()只从数据库中检索一行。您需要在while循环中调用它来检索所有行。$looping增量在这里是不必要的,因为当没有更多行可用时,mysql_fetch_array()返回false。

while ($row = mysql_fetch_array($result))  
{
    echo $row["Name"].", Room ".$row["Room"].", Tel ".$row["Telephone"] ;
}

我会做…

while ($row = mysql_fetch_assoc($result)) {
   // print $row;
}
while ($row = mysql_fetch_array($result))  
    {
        echo $row["Name"].", Room ".$row["Room"].", Tel ".$row["Telephone"] ;
    }
<?php
$qry = mysql_query($result); 
while ($row = mysql_fetch_array($qry))  
    {
        echo $row["Name"].", Room ".$row["Room"].", Tel ".$row["Telephone"] ;
    }
?>

PHP有很好的文档和示例。查看mysql_fetch_array()的示例。

你的代码应该是这样的:

<?php
  while($row = mysql_fetch_array($result)) {
     echo $row["Name"].", Room ".$row["Room"].", Tel ".$row["Telephone"] ;
  }
?>

使用此

while($row = mysql_fetch_array($result)) 
{
   echo $row["Name"].", Room ".$row["Room"].", Tel ".$row["Telephone"] ; 
}

在php中,没有类似$row.length;"."是字符串串联的运算符。有关mysql_fetch_array的详细信息,请访问http://php.net/manual/en/function.mysql-fetch-array.php.

<?php
  while($row = mysqli_fetch_array($result,MYSQLI_ASSOC)) {
     echo $row["Name"].", Room ".$row["Room"].", Tel ".$row["Telephone"] ;
  }
?>