前提・実現したいこと
お世話になります。
phpとデータベースの勉強中の初心者です。
ご助力いただけますと幸いです。
現在、予約システムのようなものを作成中です。
データベースは
id , day , count から構成されており
id=1〜56まであります。
countが「0」の時は「×」、それ以外は「○」を表示しています。
表は左から縦に並んでおり、左上が1、右下が56となっています。
実現したいことは、
現状、id=1〜56をforeachで繰り返して1かたまりになっていますが、
1〜8、9〜16、17〜24、、、、と言うふうに分けたいと考えています。
というのも、分けた項目ごとにドロップダウンメニューが作りたいからです。
発生している問題・エラーメッセージ
自分の思う方法で1〜8に分けると、表示されなくなります。
該当のソースコード
現在 ○ ✖️ の表記をさせている箇所 foreach ($pdo->query('select * from reserv') as $row) { if ($row['count']==0) { echo '<p><label for="',$row['id'],'" class="label2">×</label></p>'; }else { echo '<p><input class="checkbox" type="checkbox" name="counter" value="', $row['id'], '" id="', $row['id'],'"><label for="',$row['id'],'" class="label">○</label></p>' ; } }
試したこと
id 1〜8 を表示させたい foreach ($pdo->query('select * from reserv') as $row) { if ($i >= 8) { break; } else if ($row['count']==0) { echo '<p><label for="',$row['id'],'" class="label2">×</label></p>'; $i++; }else { echo '<p><input class="checkbox" type="checkbox" name="counter" value="', $row['id'], '" id="', $row['id'],'"><label for="',$row['id'],'" class="label">○</label></p>' ; $i++; } } id 9〜16 を表示させたい foreach ($pdo->query('select * from reserv where id >= 9') as $row) { if ($i >= 8) { break; } else if ($row['count']==0) { echo '<p><label for="',$row['id'],'" class="label2">×</label></p>'; $i++; }else { echo '<p><input class="checkbox" type="checkbox" name="counter" value="', $row['id'], '" id="', $row['id'],'"><label for="',$row['id'],'" class="label">○</label></p>' ; $i++; } }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。