Php 如何正确显示check_required_fields功能中的错误消息?
嗨,我想要些帮助。我有一个用于验证表单必填字段的函数,在该函数中我传递了req。数组中的字段,因此if为空,例如first_name返回错误消息:“first_name为空。”。问题是,我想让消息中字段的名称对用户来说更“友好”,而不是camelcase或“\ux”。我怎样才能做到这一点 p、 这是我的代码:Php 如何正确显示check_required_fields功能中的错误消息?,php,function,field,required,Php,Function,Field,Required,嗨,我想要些帮助。我有一个用于验证表单必填字段的函数,在该函数中我传递了req。数组中的字段,因此if为空,例如first_name返回错误消息:“first_name为空。”。问题是,我想让消息中字段的名称对用户来说更“友好”,而不是camelcase或“\ux”。我怎样才能做到这一点 p、 这是我的代码: $required_fields = array('first_name', 'last_name', 'email', 'profileInfo', 'message'); $error
$required_fields = array('first_name', 'last_name', 'email', 'profileInfo', 'message');
$errors = array_merge($errors, check_required_fields($required_fields));
现在,输出错误消息如下所示:
“第一个_名称是必需的”或“档案信息是必需的”。
其功能是:
function check_required_fields($required_fields) {
$field_errors = array();
foreach($_POST as $field=>$value){
if(empty($value) && in_array($field, $required_fields) === true){
$field_errors[] = "the " . $field . " is required.";
//break 1;
}
}
return $field_errors;
}您可以为每个必填字段指定一个标签
$required_fields = array(
'first_name' => 'First Name',
'last_name' => 'Last name',
'email' => 'Email Address',
'profileInfo' => 'Profile information',
'message' => 'Message'
);
$errors = array_merge($errors, check_required_fields($required_fields));
您需要更改check_required_fields
方法来正确处理$required_fields
数组,如下所示:
function check_required_fields($required_fields)
{
$field_errors = array();
foreach ($_POST as $field => $value)
{
if (empty($value) && array_key_exists($field, $required_fields) === true)
{
$field_errors[] = "the " . $required_fields[$field] . " is required.";
//break 1;
}
}
return $field_errors;
}
编辑:我刚刚注意到,只有在设置了字段的情况下,$\u POST
上的循环才会按预期工作。请尝试以下操作:
function check_required_fields($required_fields)
{
$field_errors = array();
foreach ($required_fields as $field => $label)
{
$value = $_POST[$field];
if (empty($value))
{
$field_errors[] = "the " . $label . " is required.";
//break 1;
}
}
return $field_errors;
}