Php 用一个foreach循环处理一组表单错误?

Php 用一个foreach循环处理一组表单错误?,php,forms,foreach,Php,Forms,Foreach,我的网站上有一堆PHP表单上的“选择”菜单/下拉列表 在处理表单的其余部分之前,我想检查每个菜单上的一个选项是否已被选中,并想知道是否可以使用PHP循环遍历所有字段 从以下内容开始,但有点迷路了: foreach($_POST as $key => $val){ //$errormsg.= $key." - ".$val."\n"; if ($_POST['FIELD_NAME_HERE']){

我的网站上有一堆PHP表单上的“选择”菜单/下拉列表

在处理表单的其余部分之前,我想检查每个菜单上的一个选项是否已被选中,并想知道是否可以使用PHP循环遍历所有字段

从以下内容开始,但有点迷路了:

        foreach($_POST as $key => $val){
        //$errormsg.= $key." - ".$val."\n";

             if ($_POST['FIELD_NAME_HERE']){            
                     $FIELD_NAME_HERE_field = $_POST['FIELD_NAME_HERE'];
             } else {
                     $errormsg.= "<li>Please select from the FIELD_NAME_HERE options</li>";
             }

        }
foreach($\发布为$key=>$val){
//$errormsg.=$key.“-”$val.“\n”;
如果($\u POST['FIELD\u NAME\u HERE']){
$FIELD\u NAME\u HERE\u FIELD=$\u POST['FIELD\u NAME\u HERE'];
}否则{
$errormsg.=“
  • 请从字段中选择“名称”选项,此处为选项”
  • ”; } }
    这可能吗?如果是,我该如何实现这一点


    谢谢。

    我想这可能适合您:

    foreach($_POST as $key => $val)
    {
    //$errormsg.= $key." - ".$val."\n";
    
        if ($val)
        {            
            ${$key.'_field'} = $val;
        } 
        else 
        {
            $errormsg.= "<li>Please select from the $key options</li>";
        }
    }
    
    foreach($\发布为$key=>$val)
    {
    //$errormsg.=$key.“-”$val.“\n”;
    如果($val)
    {            
    ${$key.''字段'}=$val;
    } 
    其他的
    {
    $errormsg.=“
  • 请从$key选项中选择”
  • ”; } }

    不过,这可能不是我处理表单错误的方式。

    似乎是
    ${$key}\u字段=$val比特给了我一个错误。出于兴趣,你会如何处理它不同于我的?这里的想法完全开放。再次感谢:-)呜呜呜呜!!!我想那时我离得不远。非常感谢福菲@mcgarriers好的,试试这种语法——无论是在eclipse中还是在我运行代码时,它都不会给我任何错误(尽管没有用post数据测试它)。我将专注于在提交表单之前做所有我能做的验证——然后逐个检查——如果需要,为每个问题输出一条单独的错误消息。话虽如此,我从未使用过包含大量单个元素的表单。我已经使用了一些jQuery处理表单,但如果JS失败/用户禁用JS,这是一个非常好的回退。