2011-04-21 135 views
1

我在Wordpress中输出了一些类别,这些显示很好,很花哨。 当我勾选一些复选框时,这些全部都会正确地更新到数据库中。我还可以输出在单独的foreach循环中打勾的ID。但这里是我的问题,我需要在$ category中测试$ category foreach循环是否需要打勾ID,但是我不能为我的生活找出逻辑!PHP多个复选框,找出是否应该检查复选框?

<?php 
$categories = get_categories(); 
foreach($categories as $category) 
{ 
    $eirepanel_general_options_string = implode(',', $eirepanel_general_options['checkbox']); // String 
    $eirepanel_general_options_array_pieces = explode(',', $eirepanel_general_options_string); // Array of IDs 

    echo $category->cat_ID; // String because inside loop 

    ?> 

    <span><?php echo $category->cat_name; ?></span> 
    <input name="eirepanel_general_options_checkbox[]" type="checkbox" value="<?php echo $category->cat_ID; ?>" /> 
<?php 
} 
+1

“我需要在$类别中测试$ category foreach循环是否需要勾选ID”,您如何知道它是否需要勾选? – 2011-04-21 03:55:33

+0

嘿Dagon。假设我勾选了2个ID为4和11的复选框,这些复选框在myssql中完美更新。然后我需要复选框4和11始终打勾,希望帮助 – 2011-04-21 04:02:45

+0

检查全球后,或他们存储在哪里。 – 2011-04-21 04:04:01

回答

3

如果$ids包含了所有当前选择复选框列表,这个片段添加到您的<input type="checkbox">行:

<input type="checkbox"... <?=in_array($category->cat_ID, $ids)? 'checked="checked"' : '' ?> ... > 

$ids应该像:array("25", "14", "1")

+0

谢谢吉米。数据被序列化,这是一个问题吗? $ category-> cat_ID被称为复选框,在数据库中看起来像这样a:5:{s:4:“name”; s:13:“Keith Donegan”; s:3:“age”; s:2:“ 21“; s:7:”college“; s:9:”Spin City“; s:8:”category“; s:1:”7“; s:8:”checkbox“; a:2:{i :0; S:1: “3”; I:1; S:1: “9”;}} – 2011-04-21 11:49:38