Php 如何检查收音机是否已检查?

Php 如何检查收音机是否已检查?,php,radio-button,Php,Radio Button,post后如何检查单选按钮是否被选中 我单选按钮上的代码 <?php if(isset($_POST['Itemtype']) && $_POST['Itemtype'] == 'Ingredient') echo 'checked="checked" ';?> <?php if(isset($_POST['Itemtype']) && $_POST['Itemtype'] == 'Miscellaneous') echo 'checked="c

post后如何检查单选按钮是否被选中

我单选按钮上的代码

<?php if(isset($_POST['Itemtype']) && $_POST['Itemtype'] == 'Ingredient') echo 'checked="checked" ';?>
<?php if(isset($_POST['Itemtype']) && $_POST['Itemtype'] == 'Miscellaneous') echo 'checked="checked" ';?>
如果我没有选择单选按钮,它会说“语法错误:未定义的索引Itemtype”一直指向
$Itemtype=$\u POST[“Itemtype”]

如果我选择单选按钮,它不会返回选中单选按钮的复选框


任何人都可以向我伸出援助之手,谢谢。

如果未勾选单选选项,则需要使用isset,否则将无法设置

要检查它单选按钮已被检查(并张贴)您可以这样

if (isset($_POST['Itemtype'])) { // if ANY radio button was ticked at all
  echo $_POST['Itemtype']; // display the 'value' the choice that was ticked.
} else {
  echo "no radio button ticked.";
}
“Itemtype”需要像这样使用单选按钮引用name=''字段

<input type="radio" name="Itemtype" value="female">Female
<input type="radio" name="Itemtype" value="male">Male
女性
男性

如果用户已检查收音机,web浏览器将仅传递
POST
中的值

按如下方式更新代码,以检查是否已选择收音机:

if(isset($_POST['Itemtype']))
{
    if($_POST["Itemtype"] == "Ingredient")
    { 
        $try2 = "ingred. working";
    }
    elseif($_POST["Itemtype"] == "Miscellaneous")
    {
        $try2 = "misc. working";
    }
}
else
{
    $errormsg = 'error5';
}


由于调试原因,我强制使用Itemtype。。。这将显示你的逻辑工作。。。我的问题是你是否在重复你的$try2….

使用
isset
<代码>$checked=isset($\u POST['checkbox'])?真:假
与您之前所做的完全相同:
如果(isset($\u POST['Itemtype'])&&&$\u POST['Itemtype']=='Miscellaneous')
正确,浏览器甚至不会为一组收音机发送POST参数,除非选中其中一个。如果包含HTML,第二个问题可能会更容易得到帮助。可能的重复项您的语法错误是错误的
{
。此外,您可以使用开关根据$\u POST['Itemtype']回显某些内容值在Matt回显的位置!谢谢这对我有帮助,但仍然没有返回单选按钮的选中值。我想知道浏览器是否与此有关?将echo$_POST['Itemtype'];替换为$result=$_POST['Itemtype'];然后您可以使用$result作为返回值。下面是我的提示:
if(isset($_POST['Itemtype']))){$Itemtype=$\u POST[“Itemtype”];if($\u POST[“Itemtype”]=“成分”){$try2=“ingred.working”;}elseif($\u POST[“Itemtype”]=“杂项”){$try2=“misc.working”;}else{$errormsg='error5';}
我能问一下
$\u POST['Itemtype']=“成分”有什么用吗
一开始?抱歉,纽贝,我这么做是为了让php认为它来自表单…你可能想自己删除它…但是你的逻辑是有效的,所以如果它不起作用,那么你的表单可能有问题…我会在比较值时使用strtolower或strtoupper来消除区分大小写的结果。我只是使用$试着用2测试itemtype=Component是否有效。但我可能会在itemtype=Component和misc下选择一些东西。我需要在上面再加两个if-else语句嵌套。我会考虑使用一个开关。如果我使用开关,我可以这样做吗?
switch($itemtype){case-component:if(isset){}else{}break;case Misc.:if(isset){if(isset){}else{}else{}break;}
还是我弄糟了?:D我以前只使用过一次开关,所以我不确定我在开关上做的是否正确
if(isset($_POST['Itemtype']))
{
    if($_POST["Itemtype"] == "Ingredient")
    { 
        $try2 = "ingred. working";
    }
    elseif($_POST["Itemtype"] == "Miscellaneous")
    {
        $try2 = "misc. working";
    }
}
else
{
    $errormsg = 'error5';
}
<?  
    $_POST['Itemtype'] = "Ingredient";
    if(isset($_POST['Itemtype'])) {
        $Itemtype = $_POST["Itemtype"]; 
        if($_POST["Itemtype"] == "Ingredient") {
            $try2 = "ingred. working"; 
        }elseif($_POST["Itemtype"] == "Miscellaneous"){
            $try2 = "misc. working"; 
        } 
    } else { $errormsg = 'error5'; }
    echo $try2;
    echo $errormsg;
?>