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