1

投稿が有効でエラーがなくなるまで、チェックボックスのリストをチェックしたままにしようとしています。以下は私が使用しているコードです。どんな助けにも感謝します。

     <?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 を使用してチェックボックスを正常に表示できますが、上記のヘルプが必要です..

4

1 に答える 1

0

$_POST['drinks'] は配列です。また、id 値は「drinks[]」である必要はありません。

次のようなことを試してください:

$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 を含めていただけますか

于 2012-05-20T06:02:28.270 に答える