当用户提交表单时,使用 if 语句进行验证,如下所示
if (strlen($_POST['password']) < 5)
{
$data['errors'][] = 'Too short';
}
elseif ($_POST['password'] != $_POST['confirm_password'])
{
$data['errors'][] = 'doesnt match';
}
验证完成后,我们检查是否有任何错误
if (!$data['errors'])
如果不是,我们继续并将数据填充到数据库中
但是,如果有错误,用户需要重新填写整个表格,我不希望这样,如果它是合法的,我需要返回一些数据
if (!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL))
{
$data['errors'][] = 'E-mail not valid';
}
像这里一样,如果密码验证失败但电子邮件验证正常,我想退还表单中已经有价值的电子邮件。我是否需要在每个验证检查上添加一个 else 语句,例如 } else { $data['postback']['email']; 或者我可以用另一种更简单的方式做到这一点吗?
我怎样才能做到这一点?