【问题标题】:sqli only taking the first row from databasesqli 仅从数据库中获取第一行
【发布时间】:2015-08-17 11:09:22
【问题描述】:

我正在尝试使用 php 来显示添加到表单中的所有 cmets,但它只给了我第一行。 知道为什么会这样吗?

    <?php

echo "Comments page";


$conn =  new mysqli('localhost', 'comment42_user', 'test42', 'comments');
$result = $conn->query("SELECT fname, lname, email, website, comment FROM comments;");
$row = $result->fetch_assoc();
echo "First name:" . $row['fname'];
echo " last name:" . $row['lname'];
echo " Email:" . $row['email'];
echo " Website:" . $row['website'];
echo " comment:" . $row['comment'];


?>

【问题讨论】:

  • 查询中不需要;()
  • 嗯,你只取一行。检查mysqli::fetch_assoc() 示例。
  • 你可以循环并至少获得第二个?

标签: php mysql database sqlite


【解决方案1】:

使用while语句:

while($row = $result->fetch_assoc())  {
   echo "First name:" . $row['fname'];
   echo " last name:" . $row['lname'];
   echo " Email:" . $row['email'];
   echo " Website:" . $row['website'];
   echo " comment:" . $row['comment'];
}

【讨论】:

  • 非常感谢,我是 php 新手。
【解决方案2】:

你需要使用while循环来显示所有的cmets。

试试

<?php

echo "Comments page";


$conn =  new mysqli('localhost', 'comment42_user', 'test42', 'comments');
$result = $conn->query("SELECT fname, lname, email, website, comment FROM comments;");
while($row = $result->fetch_assoc())
{
    echo "First name:" . $row['fname'];
    echo " last name:" . $row['lname'];
    echo " Email:" . $row['email'];
    echo " Website:" . $row['website'];
    echo " comment:" . $row['comment'];
}
?>

【讨论】:

    【解决方案3】:

    如果您期望超过 1 行,请将 echo 放在 while 或 foreach 循环中

    <?php
    
    echo "Comments page";
    
    
    $conn =  new mysqli('localhost', 'comment42_user', 'test42', 'comments');
    $result = $conn->query("SELECT fname, lname, email, website, comment FROM comments;");
    while($row = $result->fetch_assoc())
    {
    echo "First name:" . $row['fname'];
    echo " last name:" . $row['lname'];
    echo " Email:" . $row['email'];
    echo " Website:" . $row['website'];
    echo " comment:" . $row['comment'];
    }
    
    ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-11-04
      • 1970-01-01
      • 2016-03-14
      • 2011-08-13
      • 1970-01-01
      • 2022-01-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多