当mysql有两行时,只读取一行


Reading only one row from mysql when there are two

我需要脚本输出这两行。然而,我只能让它输出第一个。请帮助!

下面是我的代码:
  <?php 
$server = ""; // assume server name 
$connect = mysqli_connect($server,,,) //assume password etc.
or die ("Couldn't connect to server"); //connect to admin database
$query = "SELECT mt FROM Content";
$result = mysqli_query($connect, $query)
 or die ('Could not execute query.');
$nrows = mysqli_num_rows($result);
$row = mysqli_fetch_array($result);
$i = 0;
while ($i <= 30)
{
echo $row[$i];
$i++;
}
?>

您需要在循环中获取一行:

while ($row = mysqli_fetch_array($result)) { ...

试着输入:

while( $row = mysqli_fetch_array($result) )
{
    echo $row[$i];
    $i++;
}

您只获取第一行。你应该在mysqli_fetch_array()上做一个while循环来获取这两行。

while ($row = mysqli_fetch_array($result)) {
    for ($i = 0; $i < 30; $i++) {
        echo $row[$i];
    }
}

应该可以了(就像我写的其他一些帖子一样,但他们忘记了部分答案:-)

但是我认为你应该使用OO的方式来使用mysqli

您可以使用mysqli_fetch_all()来获取所有的记录