投稿に目を通し、何時間も検索しましたが、解決策が見つかりません。
フォームがwhile
ループしています (データベースから取得されたデータ)。各結果に対して、表の「行」が形成されます。各行には複数の入力とフォーム (更新、削除など) があります。また、各行にチェックボックスがあります。チェックボックスフォームは最後のフォームなので、配置できます:
<input type="submit" value="Delete Selected">
</form>
ボタン自体がループしないように while ループの外側。
チェックボックス:
<input type="checkbox" name="chkdel[<?=$i?>]" value="<?=$accnt[userId]?>">
は同じループに$i
あります。++$i
while
このチェックボックスのフォーム:
<form method="post" action="<?=$PHP_SELF?>?gm=<?=$gm?>&act=deleteselected">
act は$_REQUEST
、タスク (更新、削除など) に特定の if 式を使用するために使用されます。
ただし、$_POST
配列には値が 1 つしかありません。そして、その値はある$i
べき値と一緒です。
また、選択されたチェックボックスが生成された行のリストの最後のチェックボックスである場合にのみ、値が投稿されます。
Array ( [chkdel] => Array ( [3] => bonaxcel03 ) )
最後の値ではなく、選択したすべてのチェックボックスの値を投稿するにはどうすればよいですか?
<tr>
<form method="post" action="?gm=edit_account&page=1&src=bonaxcel&src_cdn=Account&filter=&act=confirm">
<input type="hidden" name="usernum" value="150229">
<input type="hidden" name="userid" value="bonaxcel02">
<td class="alt1" style="padding: 4px;" width="15%">bonaxcel02</td>
<td class="alt1" style="padding: 4px; text-align: center;" width="15%">
<input class="smallinput" type="text" name="userpwd" value="09462921792a"></td>
<td class="alt1" style="padding: 4px; text-align: center;" width="15%">
<input class="smallinput" type="text" name="uilock_pw" value="71134744a"></td>
<td class="alt1" style="padding: 4px; text-align: center;" width="15%">
<input class="smallinput" type="text" name="usercash" value="5"></td>
<td class="alt1" style="padding: 4px; text-align: center;" width="20%">2012-12-10 07:11:19 </td>
<td class="alt1" style="padding: 4px; text-align: center;" width="10%">
<input type="submit" value="Update" class="btn_list_update"></td></form>
<td class="alt1" style="padding: 4px; text-align: center;" width="10%">
<form method="post" action="?gm=edit_account&page=1&src=bonaxcel&src_cdn=Account&filter=&act=delete">
<input type="hidden" name="userid" value="bonaxcel02">
<input type="submit" value="Delete" class="btn_list_delete">
</form>
<form method="post" action="?gm=edit_account&page=1&src=bonaxcel&src_cdn=Account&filter=&act=deleteselected">
<input type="checkbox" name="chkdel[2]" value="bonaxcel02">
</td>
</tr>
<input type="submit" value="Delete Selected">
</form>
このフォームは、while の結果ごとに繰り返されます (フィルタリング オプションを使用すると、複数のページで数千になる場合があります)。