Есть ли другой способ распечатать таблицу MySQL в HTML, как матричная форма? - PullRequest
0 голосов
/ 10 февраля 2019

В настоящее время я работаю над проектом колледжа. Требуется распечатать данные (предмет, класс, раздел) в соответствующий день и час в html-таблице. Я старался изо всех сил, чтобы выполнить требование, но html-таблица просто печатаетснова и печатает следующее значение, где я хочу, чтобы все мои данные были напечатаны в одной таблице с соответствующим днем ​​и часом.

вот изображение моей базы данных: enter image description here

А вот мой вывод, который меня не устраивает: https://imgur.com/a/oa8OLyT

Вот мой запрос:

<?php  
include "conn.php";
include ("/styles/faculty_menu.php");
session_start();
$uid=$_SESSION['userid'];
$cuid=strtoupper("$uid");
$qrun=mysql_query("SELECT * FROM login WHERE id='$cuid'");
$udata=mysql_fetch_assoc($qrun);
$q2run=mysql_query("SELECT * FROM schedule WHERE id='$cuid'");
$u2data=mysql_fetch_assoc($q2run);
$urole=$udata['role'];
$comp=strtoupper("$u2data[subject]");
$day = array("Monday", "Tuesday", "Wednessday", "Thursday", "Friday", "Saturday");
?>

Я ожидаю, что результат будетодна таблица со всеми уважаемыми данными в соответствующем месте.

Вот мой код:

<div class="table-responsive">
<table class="table table-bordered">
    <tr>
        <th>
            <center>Day/Hour</center>
        </th>
        <?php 
            for ($i=1; $i <=8 ; $i++) { 
            ?>
        <th>
            <center><?php echo $i; ?></center>
        </th>
        <?php } ?>
    </tr>
    <?php
        while ($rows=mysql_fetch_assoc($q2run)) {
           for ($d=0; $d <6 ; $d++) { 
           ?>
    <tr>
        <th>
            <center><?php echo $day[$d]; ?></center>
        </th>
        <?php 
            for ($r=1; $r <=8; $r++) {

                ?>
        <td>
            <?php 
                if ($rows['day']==$day[$d] && $rows['hour']==$r) {
                    echo $rows['class'],$rows['section'],$rows['subject'];

                }
                ?>
        </td>
        <?php } ?>
    </tr>
    <?php } 
        }
              ?>
</table>

1 Ответ

0 голосов
/ 10 февраля 2019

У меня есть изменения в логике вашего кода.Надеюсь, что это будет работать

<div class="table-responsive">
    <table class="table table-bordered">
        <tr>
            <th>
                <center>Day/Hour</center>
            </th>
            <?php 
            for ($i=1; $i <=8 ; $i++)
                echo '<th><center>'.$i.'</center></th>';
            ?>
        </tr>
        <?php
        for($d=0;$d<6;$d++){
        ?>
            <tr>
                <th>
                    <center><?php echo $day[$d]; ?></center>
                </th>

                <?php
                for ($r=1; $r <=8; $r++) {
                    echo '<td>';
                        while ($rows=mysql_fetch_assoc($q2run)) {
                            if($rows['day']==$day[$d] && $rows['hour']==$r)
                                echo $rows['class'],$rows['section'],$rows['subject'];
                        }
                    echo '</td>';
                }
                ?>
            </tr>
        <?php
        } 
        ?>

    </table>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...