jQueryを使用して非表示の入力値を作成するプロジェクトがあります。これらはグループとメンバーを表すため、グループ自体に1つの配列があり、各グループのメンバーに配列があります。
たとえば、数回作成した後、フォームのコードには次のものが含まれます。
<input type="hidden" name="groups['group_2']" value="0">
<input type="hidden" name="groups['group_1']" value="0">
<input type="hidden" class="mem_id_holder" name="group_1[]" value="FWNGVISkjW">
<input type="hidden" class="mem_id_holder" name="group_1[]" value="G0t9E3C0yG">
<input type="hidden" class="mem_id_holder" name="group_2[]" value="NT-JEDVCS9">
group_1に2つのメンバーがあり、group_2に1つのメンバーがある2つのグループの例。
ここで、コードを送信して値を反復処理した後、次のコードを使用します。
if ($groups_no && isset($_POST['groups']) && !empty($_POST['groups'])){
$groups = $_POST['groups'];
foreach ($groups as $key => $val){
if (isset($_POST[$key]) && !empty($_POST[$key])){
$group_members = $_POST[$key];
foreach ($group_members as $member_key => $member_val){
echo 'Actions to be done here!';
}
}
}
}
私が抱えている問題は、次の警告が表示され、プログラムが失敗することです。
Notice: Undefined index: 'group_1' in C:\ ... .php on line 31
Warning: Invalid argument supplied for foreach() ...
Notice: Undefined index: 'group_2' in C:\ ... .php on line 31
Warning: Invalid argument supplied for foreach() ...
すべてを使用$_POST['group_1']
すると問題なく動作しますが、挿入する必要のあるグループの数とグループがわからないため、変数が必要です。私はいくつかのグーグルの結果を通して提案されたいくつかの異なることを試みましたが、何もうまくいきませんでした。
何か案は?$_POST
変数をインデックスとして持つことさえできますか?また、そうでない場合、他の回避策はありますか?