gpt4 book ai didi

php - 数组中未选中的复选框

转载 作者:行者123 更新时间:2023-12-02 06:23:19 24 4
gpt4 key购买 nike

我正在构建一个可以添加更多字段组的表单,为了处理它们,我在 for 循环中读出数组

脚本:

<?php
foreach ($_POST as $key => $value) {
$$key = $value;
}
$count = count($name);
for ($i=0; $i<$count; $i++){
?>
<strong><?php echo $name[$i]; ?></strong> (<?php echo $check[$i]; ?>)<br /><?php echo $select[$i]; ?><br /><br />
<?php
}
?>
<form method="post">
<div class="group">
<input type="text" name="name[]" /><br />
<input type="checkbox" name="check[]" value="true" /><br />
<select name="select[]"><option>1</option><option>2</option><option>3</option></select>
</div>
<div class="group">
<input type="text" name="name[]" /><br />
<input type="checkbox" name="check[]" value="true" /><br />
<select name="select[]"><option>1</option><option>2</option><option>3</option></select>
</div>
<div class="group">
<input type="text" name="name[]" /><br />
<input type="checkbox" name="check[]" value="true" /><br />
<select name="select[]"><option>1</option><option>2</option><option>3</option></select>
</div>
<button>Add another group</button>
<input type="submit" />
</form>

如果所有复选框都被选中,则没有问题,但如果只选中最后一个复选框,则它只计算数组中的一个复选框,然后 name[0] 与 check[0] 组合,但 check[0] 实际上是 check[ 2].英语不是我的母语,所以我不知道正确的词。

最佳答案

实际上,Sam 在 Stack Overflow 上的这个回答中提出了一个不错的解决方法:

Post the checkboxes that are unchecked

它对我有用,我怀疑你和我有类似的问题(我的是我有/有超过 300 个输入字段在类似的(ish)组中并且不想为每个输入字段编写验证规则这些单独的字段,只是针对每个输入类型系列的规则,例如电子邮件地址或邮政编码。简而言之,该技术是您在复选框字段之前放置一个具有相同名称的隐藏输入字段。设置值将隐藏字段 (type='hidden') 设置为 '0' 将确保至少一个键/值出现在您的 POST 数组中,只有选中该框时,'0' 才会被后面的 '1' 取代。我需要“0”值以允许人们“取消设置”他们之前“设置”的选项,例如他们愿意显示他们的联系数据。这种技术允许我向用户呈现几乎相同的更新表单因为他们会在第一次注册时得到。感谢 Sam!

关于php - 数组中未选中的复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5502272/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com