【PHP】下らねぇ質問はここに書き込みやがれ 30
809 :
nobodyさん:
質問させて下さい。(サーバOS:FreeBSD4.10、PHP4.4.2、Apache1.3.31)
mysqlデータベースにフィールド名が「name」で「一郎」、「二郎」、「三郎」、「四郎」、「五郎」、「六郎」の6レコードがあります。
それをPHPで読み込んで
<table>
<tr><td>一郎</td><td>二郎</td><td>三郎</td></tr>
<tr><td>四郎</td><td>五郎</td><td>六郎</td></tr>
</table>
とするのが目的です。
で質問の内容なんですが〜whileで繰り返し処理をする時、
<table>
<tr>
<?php do { ?>
<td><?php echo $row_record['name']; ?></td>
<?php } while ($row_record = mysql_fetch_assoc($record)); ?>
</tr>
</table>
とすると、
<tr><td>一郎</td><td>二郎</td><td>三郎</td><td>四郎</td><td>五郎</td><td>六郎</td></tr>
と横に一列になってしまい、また
<table>
<?php do { ?>
<tr>
<td><?php echo $row_record['name']; ?></td>
</tr>
<?php } while ($row_record = mysql_fetch_assoc($record)); ?>
</table>
とすると
<tr><td>一郎</td></tr>
〜
<tr><td>六郎</td></tr>
のように縦に一列になってしまいます。
目的のような結果になるよう表示させるには、どのような繰り返し処理を記述すればよいのでしょうか?
ループに2回入ったら次のtr出すようにすればいい
何列目で折り返すのかが決まっているのなら
余りの数で折り返すのが良いと思います。
例の場合なら3列なのでレコード数を3で割って余りが0のときに</tr><tr>を入れる。
あとは例外処理だけ