php - 如何使用foreach从数据库表中获取数据——

标签 php html mysql foreach

我的数据库有一个名为 tblprojects 的表,其中的列名称为 project_num、project_status、project_name。我想使用 foreach 循环从数据库中获取数据并将记录显示在 php 表中。

但是我无法使用以下代码显示记录。请帮助我更正它。刚开始使用 PHP。

下面是我写的代码:

<?php
     $projects = array();
     // fetch data from the database
     $records = mysql_query('select project_num, project_status, project_name from tblprojects') or die("Query fail: " . mysqli_error());
?>


<table  class="table table-striped table-condensed" id="tblData">
    <thead>
        <tr>
            <th>Project Name</th>
            <th>Project Number</th>
            <th>Project Status</th>
       </tr>
    </thead>

    <tbody>
       <?php 
            while (  $row =  mysql_fetch_assoc($records)    )
            {
                $projects[] = $row;
                foreach ($projects as $project):
      ?>
        <tr>
            <td><?echo $project['proj_name']; ?></td>
            <td><?echo $proj['proj_num']; ?></td>
            <td><?echo $proj['proj_status']; ?></td>
        </tr>

      <?php endforeach; 
           }
      ?>


    </tbody>        
</table>

请帮我解决问题,回复更正的代码(首选)。非常感谢。

最佳答案

此处不需要foreach

<?php 
    $projects = array();
    while ($project =  mysql_fetch_assoc($records))
    {
        $projects[] = $project;
    }
    foreach ($projects as $project)
    {
?>
    <tr>
        <td><?php echo $project['proj_name']; ?></td>
        <td><?php echo $project['proj_num']; ?></td>
        <td><?php echo $project['proj_status']; ?></td>
    </tr>
<?php
    }
?>

关于php - 如何使用foreach从数据库表中获取数据——,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29968425/

相关文章:

php - Laravel 5.4 fopen() : Filename cannot be empty

php - 为对象交互设计类和函数

mysql - 如何在 Laravel 4 中添加组合唯一字段验证器规则

javascript - 在输入 [type ='number' ] Edge 总是为 `NaN` 返回 `valueAsNumber`

php - 创建用于 jstree 的有效 JSON 对象时遇到问题

mysql - 如何在确定的日期从我的数据库中获取数字结果

php - 如何解决 "Call to undefined function AES_ENCRYPT"MySQL数据数组

php - 循环我的测验 ID 并获取每个测验 ID 并将其插入到答案表中

html - 灰度背景改变文字颜色? CSS

php - 谷歌图表时间轴 : how can I left-justify the row labels