0

我这里有这段代码,它在 Wordpress 中只保存一个复选框选择。我怎样才能让它保存多个值?如果我不正确地存储值(我可能是这样),我怎样才能将它们正确地发布到数据库中?

这是我目前发布选项的方式:

   if (isset ($_POST['update_blog_options'])) {
     $montage_blog_options = get_option ('blog_settings');
     $montage_blog_options['user_cats'] = $_POST['user_cats'];
    update_option('blog_settings', $montage_blog_options);
    }

然后我创建复选框数组的代码:

               $args = array( 'hide_empty' => 0, 'taxonomy'=> 'category');
               $categories =  get_categories($args);
               if ($categories){
                    foreach ( $categories as $category ){ 
                        if($category->cat_name==$montage_blog_options['user_cats']) {
                            $selected = 'checked="checked"';
                        } else {
                            $selected = '';
                        }

                        echo '<input name="user_cats" value="'.$category->cat_name.'" '.$selected.' type="checkbox"/> '.$category->cat_name.'<br/>';
                    }
                }
4

1 回答 1

1

如果您将输入的名称更改为在名称中包含 [],即 name="user_cats[]",那么它将把它的所有实例存储为一个数组。然后您可以将值作为数组访问。

我不记得它到达页面时的确切外观,但您可以在接收页面上 print_r($_POST['user_cats']) 看看它的外观。

于 2013-03-21T23:07:17.260 回答