Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用prepare从数据库检索数据的代码有什么问题_Php_Html_Pdo_Prepare - Fatal编程技术网

Php 使用prepare从数据库检索数据的代码有什么问题

Php 使用prepare从数据库检索数据的代码有什么问题,php,html,pdo,prepare,Php,Html,Pdo,Prepare,这是我使用prepare语句从数据库检索数据的php代码 if ($conn) { //database connected success $view_sql = "SELECT * FROM certificate_verify"; $stmt_view = $conn->prepare($view_sql); $stmt_view->execute(); $results_view = $stmt_view->fetchAll(); foreach($results

这是我使用prepare语句从数据库检索数据的php代码

if ($conn) { //database connected success

$view_sql = "SELECT * FROM certificate_verify";
$stmt_view = $conn->prepare($view_sql);
$stmt_view->execute();

$results_view = $stmt_view->fetchAll();

foreach($results_view as $row) {

    $view_first_name = $row['first_name'];
    $view_last_name = $row['last_name'];
}
我需要从数据库中获取所有数据以显示在下面的显示页面中

<table>
  <tr>
    <td><?php echo $view_first_name; ?></td>
    <td><?php echo $view_last_name; ?></td>
  </tr>
</table>


但我只获取最后一行数据(不是数据库中的所有数据),为什么会发生这种情况,以及我的代码有什么问题?

在表中使用foreach循环,否则在foreach循环中使用数据ovetlap,只获取最后一个值

<?php
$results_view = $stmt_view->fetchAll();
?>
<table>
    <?php foreach ($results_view as $row) { ?>// start your loop here
        <tr>
            <td><?php echo $row['first_name']; ?></td>
            <td><?php echo $row['last_name']; ?></td>
        </tr>
    <?php } ?>// loop end
</table>

//从这里开始循环
//环端

在表中使用foreach循环,否则您将在foreach循环中使用tlap数据,并且只获得最后一个值

<?php
$results_view = $stmt_view->fetchAll();
?>
<table>
    <?php foreach ($results_view as $row) { ?>// start your loop here
        <tr>
            <td><?php echo $row['first_name']; ?></td>
            <td><?php echo $row['last_name']; ?></td>
        </tr>
    <?php } ?>// loop end
</table>

//从这里开始循环
//环端
显然, 因为每次迭代
foreach
循环时,您的
$view\u first\u name
$view\u last\u name
都会被来自
$row
的新值覆盖。 显然,您需要创建
$view\u first\u name
$view\u last\u name
数组
,并在
tr
上进行迭代, 因为每次迭代
foreach
循环时,您的
$view\u first\u name
$view\u last\u name
都会被来自
$row
的新值覆盖。 您需要创建
$view\u first\u name
$view\u last\u name
数组
,并在
tr
上迭代这些数组,用以下代码替换
foreach(…){…}
代码:

echo "<table>";
foreach ($results_view as $row)
{
  echo "<tr>";
  foreach ($row as $cell)
  {
    echo "<td>".$cell."</td>";
  }
  echo "</tr>";
}
echo "</table>";
echo”“;
foreach($results\u查看为$row)
{
回声“;
foreach($行作为$单元格)
{
回声“$cell.”;
}
回声“;
}
回声“;
用以下代码替换您的
foreach(…){…}
代码:

echo "<table>";
foreach ($results_view as $row)
{
  echo "<tr>";
  foreach ($row as $cell)
  {
    echo "<td>".$cell."</td>";
  }
  echo "</tr>";
}
echo "</table>";
echo”“;
foreach($results\u查看为$row)
{
回声“;
foreach($行作为$单元格)
{
回声“$cell.”;
}
回声“;
}
回声“;

您需要将整个
包装在
foreach
内,使用
echo
在它内您需要设置您的in-foreach循环您需要将整个
包装在
foreach
内,使用
echo
在它内您需要设置in-foreach循环