Echo mysql данные в html таблице с foreach - PullRequest
1 голос
/ 08 января 2020

Я получаю записи из базы данных на основе даты и хочу отобразить все записи по дням. Например, запись для понедельника должна быть ниже заголовка понедельника, а запись для вторника должна быть ниже заголовка вторника. В моем случае иногда некоторые записи с понедельника видны ниже среды. Как мне этого добиться?

<th>Monday</th>
<th>Tuesday</th>
<th>Wednesday</th>

<?php foreach($result as $r){
?>
<tr>
<?=$r->colname?>
</tr>

<?php }?>

1 Ответ

3 голосов
/ 08 января 2020

Вы можете сделать что-то вроде этого:

$query="SELECT * FROM table WHERE stuff = "otherstuff"";    
$res=$conn->query($query);
     while($row=$res->fetch_assoc()){

        echo "<table>";
        echo "<tr><th>".$row['date']."</th></tr>"; //here you get each date filtered by rows
        echo "<tr>";
        echo "<td>".$row['stuff']."</td>"; //data1
        echo "</tr>";
        echo "<tr>";
        echo "<td>".$row['otherstuff']."</td>"; //data2
        echo "</tr>";
        echo "</table>";
}

Я бы рекомендовал while () вместо foreach () при печати содержимого запроса myslq в таблице html5. Он перебирает while () и генерирует таблицу для каждой строки.

Ваша таблица должна выглядеть следующим образом:

Date    Stuff  Otherstuff  Morestuff
Monday  data1  data2       data3        //this one gets an own table
Tuesday XY     XY          XY           //this one gets the next table
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...