###コード
HTML
1<form action="" method="post"> 2名前:<input type="text" name="user[0][name]"> 3年齢:<input type="text" name="user[0][age]"> 4名前:<input type="text" name="user[1][name]"> 5年齢:<input type="text" name="user[1][age]"> 6名前:<input type="text" name="user[2][name]"> 7年齢:<input type="text" name="user[2][age]"> 8<input type="submit" name="insert"> 9</form>
まず、上記のように簡単ではありますがフォームを作成しました。
この場合は、列としても行としても少ないので、たいして問題はありません。
これが増えた時に、いろいろselectなりを使ったりしていけば、大変なことになるのは目に見えていたので、forとかを使えばいいのかな?と思ってみたのですが。。。
HTML
1<form action="" method="post"> 2<?php for($i = 0; $i < 2; $i++) : ?> 3名前:<input type="text" name="user[$i][name]"> 4年齢:<input type="text" name="user[$i][age]"> 5<?php endfor; ?> 6<input type="submit" name="insert"> 7</form>
これだと、当然ダメなんですよね。。。
だったら
HTML
1<form action="" method="post"> 2<?php for($i = 0; $i < 2; $i++) : ?> 3名前:<input type="text" name="user[$i][name]"> 4<?php endfor; ?> 5<?php for($i = 0; $i < 2; $i++) : ?> 6年齢:<input type="text" name="user[$i][age]"> 7<?php endfor; ?> 8<input type="submit" name="insert"> 9</form>
これだと、これもダメだし、さらに見づらいし、、、
###一応受け取り側
PHP
1$users = $_POST['user']; 2foreach ($users as $val) { 3$name = $val['name']; 4$age = $val['age']; 5}
のような感じで受け取るのは最初の書き方のときだけできてます。
###質問内容
上記の場合の適切な?書き方となるとどのように書いたらよいでしょうか?
回答2件
あなたの回答
tips
プレビュー