PHP:选中多个复选框选项时回显HTML

PHP:选中多个复选框选项时回显HTML,php,checkbox,Php,Checkbox,我编辑了这个问题,因为我觉得我的要求需要更清楚 下面的代码与复选框中选中的选项相关。当同时选中“两个值”时,它将回显“两个值”,并且它将回显“仅值A”,我无法让它回显“仅值B”,它将空白打印,没有回显。想法 <?php if (( $a == "General" ) && ( $b == "Specialist" )) { echo '<h2>both values are printed in HTML</h2>';

我编辑了这个问题,因为我觉得我的要求需要更清楚

下面的代码与复选框中选中的选项相关。当同时选中“两个值”时,它将回显“两个值”,并且它将回显“仅值A”,我无法让它回显“仅值B”,它将空白打印,没有回显。想法

<?php
 if (( $a == "General" ) && ( $b == "Specialist" )) {
 echo '<h2>both values are printed in HTML</h2>';                                
 }
?>

<?php
 if (( $a == "General" ) && ( $b != "Specialist" )){
 echo '<h2>only valueA is printed in HTML</h2>';                                
 }
?>

<?php
 if (( $a != "General" ) && ( $b == "Specialist" )) {
 echo '<h2>only valueB is printed in HTML</h2>';                                
 }
?>

如果要检查某个值是否在数组中,则应使用
在数组中
函数。您的代码应该如下所示:

<?php

$CheckBox = $form_data['field'][1]

$a = ( "valueA");
$b = ( "valueB");

$isAChecked = in_array($a, $CheckBox[1]);
$isBChecked = in_array($b, $CheckBox[1]);
?>

<?php
if  ( $isAChecked && $isBChecked ) {
     echo '<h2>both values are printed in HTML</h2>';                                
} else if ( $isAChecked ) {
     echo '<h2>only valueA is printed in HTML</h2>';                                
} else if  ( $isBChecked ) {
     echo '<h2>only valueB is printed in HTML</h2>';                                
} else {
    echo '<h2>nothing printed</h2>'
}
?>


您可以发布生成表单的HTML代码或至少与复选框相关的代码片段吗?对于条件组合,
$checkbox==$a&&$b
不正确。它必须类似于
if(($CheckBox==$a)&&($CheckBox==$b))
生成的代码实际上只以wordpress插件创建的字段数据数组的形式存在,因此没有自动创建的html。所有的HTML和PHP都需要手工编写[field]=>Array([1.]=>Array([0]=>valueA[1]=>valueB)`
if($CheckBox==$a)&&($CheckBox==$b))
似乎不起作用,这是我以前尝试过的变体之一。我觉得我们正在脱离主题。我现有的代码可以工作,并且能够返回单个选中的选项,如果选中了选项组合,我只需要能够回显唯一的答案。从您的代码中可以看出,问题在于您没有处理
$form_data['field'][1]
作为数组。因为
$CheckBox==$a&&$b
子句应该是
在_数组($a,$CheckBox[1])&&in_数组($b,$CheckBox[1])
作为
$CheckBox[1]
包含检查值的数组