drf65218 2017-09-14 06:51
浏览 114
已采纳

将整个SQL数据库放入HTML表

I'm trying to put a whole SQL database into html table. I'm using MySQLi API. But it just return the first row of the table , and the rest of them just look mess up.Here's my code:

            <h1> School Lesson System</h1>

            <?php

                if(isset($_SESSION['u_id'])) {
                    echo "You are logged in 
";
                }
            ?>
            <table border="1">
                <thead>
                    <tr>
                        <td>Lesson_id</td>
                        <td>Teacher</td>
                        <td>Lesson</td>
                        <td>Day</td>
                        <td>Time</td>
                        <td>Classroom</td>
                        <td>Year</td>
                        <td>Curriculum</td>
                    </tr>
                </thead>
                <tbody>
                    <?php
                    require_once 'includes/dbh.inc.php';

                    $query = "SELECT * FROM monday";
                    $result = $conn->query($query);
                    $rows = $result->num_rows;
                    for ( $j = 0; $j < $rows; ++$j) {
                        $result->data_seek($j);
                        $row = $result->fetch_array(MYSQLI_ASSOC);
                    echo "<tr>";
                        echo "<td>" . $row['Lesson_id']. "</td>";
                         echo "<td>". $row['Teacher']. "</td>";
                         echo "<td>" .$row['Lesson']. "</td>";
                         echo "<td>" . $row['Day']. "</td>";
                         echo "<td>". $row['Time']. "</td>";
                         echo "<td>". $row['Classroom']. "</td>";
                         echo "<td>". $row['Year']. "</td>";
                         echo "<td>". $row['Curriculum']. "</td>";
                     echo "</tr>";
                echo"</tbody>";
            echo"</table>";
                    }


include_once 'footer.php';
?>

Any solution for this ????

  • 写回答

4条回答 默认 最新

  • doumanshan6314 2017-09-14 06:56
    关注

    1.Use while instead of for loop

    2.don't close <tbody> and <table> inside loop (which is the main problem)

    3.I am unable to see session_start(); in your code, while you are using SESSION in your code.So please check and if you don't have then add that on top of the page.

    Do like below:-

    <?php
    require_once 'includes/dbh.inc.php';
    
    $query = "SELECT * FROM monday";
    $result = $conn->query($query);
    
    while($row = $result->fetch_array(MYSQLI_ASSOC)){
        echo "<tr>";
            echo "<td>" . $row['Lesson_id']. "</td>";
            echo "<td>". $row['Teacher']. "</td>";
            echo "<td>" .$row['Lesson']. "</td>";
            echo "<td>" . $row['Day']. "</td>";
            echo "<td>". $row['Time']. "</td>";
            echo "<td>". $row['Classroom']. "</td>";
            echo "<td>". $row['Year']. "</td>";
            echo "<td>". $row['Curriculum']. "</td>";
        echo "</tr>";
    }
    echo "</tbody>";
    echo "</table>";
    include_once 'footer.php';
    ?>
    

    Note:-

    Table names like Monday is not good at all. It will be fruitful name which describes it's purpose itself like users(list of users),logs(track record of different activities)...etc.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能