現在htmlで入力フォームの値を送信し、cakephp3のコントローラークラスで値を受け取るプログラムを組んでいます。
そこで質問があります。
結論から言うと、
同じname属性の値を配列にして渡すにはどうしたらいいでしょうか?1次元ではなく、多次元で渡したいです。
ただこのサイトを見て単純に1次元で配列を渡す方法はわかりました。
https://javascript.g.hatena.ne.jp/py4s-tnk/20130226/1361884317
そうではなく、
結果的にこのようなオブジェクトをコントローラークラスで受け取りたいです。
homeオブジェクト(家庭オブジェクト)
home.children.id
home.children.name
※id,nameが複数ある
POST送信なら
コントローラークラスで以下のように受け取り、変数homeに理想としている配列がそのまま渡される。
$home = $this->$request->data;
このようなことを実現する方法はあるでしょうか?
もしわかる方がいればお願い致します。
追記
携帯からの投稿だったため思うような書き方ができなかったので、少し追記します。
現状以下のような書き方をしています。
HTML
1<form action="/hoge" method="post"> 2<div> 3 <input type=text name=children_name[] value="太郎"> 4 <input type=text name=children_id[] value="1"> 5</div> 6<div> 7 <input type=text name=children_name[] value="二郎"> 8 <input type=text name=children_id[] value="2"> 9</div> 10<div> 11 <input type=text name=children_name[] value="三郎"> 12 <input type=text name=children_id[] value="3"> 13</div> 14</form>
コントローラクラスのhogeアクション
php
1$home = $this->$request->data;
$homeの中身。現状
Array ( [children_name]=>Array ( [0]=>太郎 [1]=>二郎 [2]=>三郎 ) [children_id]=>Array ( [0]=>1 [1]=>2 [2]=>3 ) )
これを以下のような結果に変えたいのです。
$homeの中身
Array ( [children]=>Array ( [name]=>Array ( [0]=>太郎 [1]=>二郎 [2]=>三郎 ) [id]=>Array ( [0]=>1 [1]=>2 [2]=>3 ) ) )
そのようなHTMLの書き方はやはりないのでしょうか?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/04/18 15:03 編集
退会済みユーザー
2016/04/18 15:24