保持关联数组复选框

时间:2012-05-20 05:38:53

标签: php arrays checkbox

我正在尝试保持一个复选框列表,直到帖子有效且没有错误。下面是我正在使用的代码。我会感谢任何帮助。

     <?php foreach ($drinks_checkbox as $option => $options){  ?>

     <input type='checkbox' id='drinks[]' name='drinks[]' value='<?php echo $option;?>'   <?php if(!empty($_POST['drinks'])){if($_POST['drinks']==$option){ echo "checked='checked'" ; }}?> /><?php echo $options;?><br />
    <?php } ?>

我可以使用implode成功显示已选中的复选框,但我需要上面的帮助..

1 个答案:

答案 0 :(得分:0)

$ _ POST ['drinks']是一个数组。此外,id值不需要是'drink []'

尝试这样的事情:

$drinksIndex = 0;
$drinksPost = $_POST['drinks'];
foreach ($drinks_checkbox as $option => $options){  ?>

  <input type='checkbox' id='drinks<?php echo $drinksIndex; ?>' name='drinks[<?php echo $drinksIndex; ?>]' value='<?php echo $option;?>'<?php
  if( !empty($drinksPost[$drinksIndex]) ) echo " checked='checked'";
  $drinksIndex++;
?> /><?php
echo $options;?><br />
<?php
} ?>

修改了!empty($ drinksPost [$ drinksIndex])部分并更改为关联。

如果这不起作用,您可以包含$ drinks_checkbox