DB(mysql)のデータをviewに反映
以前に投稿して回答を頂いた物に少し手を加えました。
前回は、入力した値を直接htmlファイルに表示させる仕様にしていましたが今回は一旦、DB側に登録して同じ日付のデータを全件表示させるという仕様に変えました。DB(mysql)側に登録しデータを取ってくるのは出来たのですが一件のみの取得表示になります。出来れば入力ずみの同じ日付けのデータを全件取得しデータが入っている所だけ表示したいのですが下記のソースでは、最新のデータしか表示されません。文字数の関係上、開始時間だけ取るようなソースコード記載しています。
(補足)laravelを使用
foreach($e_all as $e_time);
$e_allで順に入ったデータを$e_timeに入れて
$e_time->kubun
$e_time->start_timeなどで順に取得させています。
(ソース一部抜粋)
<table>
<tr>
<th>日付</th>
<th>曜日</th>
<th >区分</th>
<th >開始</th>
<th >終了</th>
<th >休憩</th>
<body>
<?php
$youbi = ['日', '月', '火', '水', '木', '金', '土'];
$countdate = date('t', mktime(0, 0, 0, 10, 1, 2021));
for ($i = 0; $i < $countdate; ++$i) {
$d = mktime(0, 0, 0, 10, 16 + $i, 2021);
foreach($e_all as $e_time);
echo '<tr>';
echo '<td class="px-4 py-3">'.date('d', $d).'</td>';
echo '<td class="px-4 py-3">'.$youbi[date("w",$d)].'</td>';
if(date('Y-m-d', $d) == $e_time->date_time){
if(!empty($e_time->start_time)){
echo '<td class="px-4 py-3">'.$e_time->kubun.'</td>';
echo '<td class="px-4 py-3">'.$e_time->start_time.'</td>';
}else{
echo '<td></td>';
}
}
echo '</tr>';
}
?>
</body>
</table>
(イメージ)
16 火
17 水 DB側に同じ日付にデータがあれば全件取得表示をさせたい
お礼
http://dixq.net/forum/viewtopic.php?f=3&t=12517
補足
別でも質問してしまったのですが、 YYYY-MM-DDのdate型で入ってます。