php - 在 POST 变量中也包括未选中的框 - 多个复选框

标签 php html wordpress checkbox http-post

我在我的 php 文件中使用下面的代码从多个复选框中获取值。

    if(!empty($_POST['check_list'])) {
        foreach($_POST['check_list'] as $check) {
                update_comment_meta($check, 'consider', 1);
        }


    }

问题是这段代码显然只将检查的值放入数组 $_POST['check_list'] 中。

我的需要是通过将“0”而不是“1”作为第三个参数来对未检查的值执行函数 update_comment_meta

有关详细信息,我给出了生成 HTML 表单的代码:

<form action="" id="primaryPostForm" method="POST">

<?php    
         $defaults = array(
    'post_id' => $current_post); 
         $com= get_comments( $defaults );

        foreach ($com as $co) {
    if(get_comment_meta($co->comment_ID, 'consider', true)==1) {
    ?><input type="checkbox" name="check_list[]" value="<?php echo $co->comment_ID; ?>" checked="checked">

    <?php }
    else {
    ?><input type="checkbox" name="check_list[]" value="<?php echo $co->comment_ID; ?>" >
    <?php
    }}
</form>

我们总是感谢您平时的帮助。

最佳答案

将未选中的值发送到帖子并不是那么容易。更好的解决方案是您以一种可以在帖子页面中轻松迭代它们的方式命名复选框。

将隐藏输入与复选框一起使用。复选框优先于隐藏输入。

<form>
  <input type='hidden' value='0' name='check_box_con'>
  <input type='checkbox' value='1' name='check_box_con'>
</form>

现在提交后,由于两者具有相同的名称,如果未选中,check_box_con 将显示隐藏字段值,否则将覆盖并显示原始值。

更多请看 Post the checkboxes that are unchecked

关于php - 在 POST 变量中也包括未选中的框 - 多个复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17223566/

相关文章:

javascript - PHP 语句中的 CSS

php - 如何将这些信息转换为查询?

javascript - 如何使用Radio按钮打开本地HTML页面?

html - YSlow 规则 "Don' t 在 HTML 中缩放图像背后的基本原理是什么”

html - Css 剪切图像的右侧

php - Magento : Special price not displaying in the product page

javascript - 需要以何种方式将事件设置为*捕获*?

javascript - 如何在 jquery 中递归地将所有子元素传输到组 div 包装器?

html - 从横向更改为纵向时强制 Ipad 缩小

php - 提高 WooCommerce 税收计算精度并保留显示的价格保留两位小数