while循环中的复选框作为数组和$ _POST

时间:2012-12-17 01:47:22

标签: php html

我已查看帖子并现在搜索了几个小时,我无法找到解决方案。

表单位于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?>&amp;act=deleteselected">

该行为与$_REQUEST一起使用,以使用特定的if表达式(更新,删除等)。

但是$_POST在数组中只有一个值。该值与$i值一致。

如果选中的复选框是生成的行列表中的最后一个复选框,它也只发布一个值。

Array ( [chkdel] => Array ( [3] => bonaxcel03 ) )

如何让它发布所有选中的复选框值而不是最后一个?

    <tr>
        <form method="post" action="?gm=edit_account&amp;page=1&amp;src=bonaxcel&amp;src_cdn=Account&amp;filter=&amp;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&amp;page=1&amp;src=bonaxcel&amp;src_cdn=Account&amp;filter=&amp;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&amp;page=1&amp;src=bonaxcel&amp;src_cdn=Account&amp;filter=&amp;act=deleteselected">
        <input type="checkbox" name="chkdel[2]" value="bonaxcel02">

        </td>

    </tr>


        <input type="submit" value="Delete Selected">
        </form>

此表单将针对每个while结果重复(可以在几页上有数千个,带有过滤选项)。

1 个答案:

答案 0 :(得分:0)

如果您根据结果不需要密钥,请使用chkdel[] chkdel[<?=$i?>] {{1}} {}