Php 为什么我的验证器没有在Laravel中进行验证?

Php 为什么我的验证器没有在Laravel中进行验证?,php,laravel,validation,laravel-6,Php,Laravel,Validation,Laravel 6,为什么我的验证器没有验证输入电子邮件字段,它接受任何东西 这是我用来更新数据库的控制器。表单中的名称是正确的 编辑:这是我的全部代码,我在这里发布我的代码只是用电子邮件,但一个家伙说,这是工作,那么为什么这不与我的更新数据库的全部代码工作 atualizar公共功能(请求$req) { $erros=[ “input nome.max'=>“introductiu carateres acima do máximo no campo do nome!”, “input facebook.max”

为什么我的验证器没有验证
输入电子邮件
字段,它接受任何东西

这是我用来更新数据库的控制器。表单中的名称是正确的 编辑:这是我的全部代码,我在这里发布我的代码只是用电子邮件,但一个家伙说,这是工作,那么为什么这不与我的更新数据库的全部代码工作

atualizar公共功能(请求$req)
{
$erros=[
“input nome.max'=>“introductiu carateres acima do máximo no campo do nome!”,
“input facebook.max”=>“introductiu carateres acima do máximo no campo do facebook!”,
“input instagram.max'=>“Introductiu carateres acima do máximo no campo do instagram!”,
'input descripao.max'=>'introductiu carateres acima do máximo no campo da descripão!',
“input profissao.max”=>“Introductiu carateres acima do máximo no campo da profissão!”,
“input imagem.max'=>“O tamanho máximo do ficheiroéde 10mb!”,
“图像”=>“O ficheiro que inseriu nãOéimagem!”,
“mimes”=>“图像的扩展,apenas JPEG,JPG e PNG!”,
“email”=>“介绍你的电子邮件瓦利多!”
];
$validator=validator::make($req->all()[
“输入名称”=>“最大值:25”,
'输入电子邮件'=>'可为空|必需|带有:输入电子邮件|电子邮件:rfc、dns、筛选器',
“输入facebook”=>“最大值:40”,
'input instagram'=>'最大值:40',
'输入profissao'=>'最大值:25',
“输入描述”=>“最大值:120”,
“输入图像M”=>“图像模拟:jpeg、png、jpg |最大值:10240”
]美元/埃罗斯);
$id=$req->input('input-id');
$membrosEquipa=DB::table('equipa')
->其中('id',$id)
->get();
$inputEmail=$req->input('input-email');
如果(!isset($inputEmail)){
$inputEmail=null;
}
如果($req->filled('input-email')){
$inputEmail=$req->input('input-email');
}
$inputNome=$req->input('input-nome');
$inputFacebook=$req->input('input-facebook');
$inputInstagram=$req->input('input-instagram');
$inputProfissao=$req->input('input-profissao');
$INPUTSCRIPCAO=$req->input('input-DESCRIPCAO');
$inputImagem=$req->file('input-imagem');
foreach($membrosEquipa作为$membro){
如果(!isset($inputNome)){
$inputNome=$membro->nome;
}
如果(!isset($inputFacebook)){
$inputFacebook=$membro->facebook;
}
如果(!isset($InputStagram)){
$InputStagram=$membro->instagram;
}
如果(!isset($inputProfissao)){
$inputProfissao=$membro->profissao;
}
如果(!isset($INPUTSCRICAO)){
$INPUTSCRICAO=$membro->descricao;
}
if(isset($inputImagem)){
存储::删除($membro->imagem);
$inputImagem=$req->file('input-imagem')->store('storage/equipa');
}否则{
$inputImagem=$membro->imagem;
}
}
$timestamp=日期('Y-m-d H:i:s');
DB::table('equipa')
->其中('id',$id)
->更新([
“nome”=>$inputNome,
“电子邮件”=>$inputEmail,
“facebook”=>$inputFacebook,
“instagram”=>$InputStagram,
“profissao”=>$inputProfissao,
'descripao'=>$InputDescriptao,
'imagem'=>$inputImagem,
'更新时间'=>$timestamp
]);
返回重定向('/editar/equipa/')->带有('status','Membro da equipa atualizado com successo');
}

定义$validator后必须使用以下代码

 $validator = Validator::make($req->all(), [
        'input-email'       => 'email:rfc,dns|required'
    ],$erros);


if ($validator->fails())
{
   return redirect()->back()->withErrors($validator)->withInput();
}

电子邮件仍然保存在数据库中,但没有验证,但它确实存在,这是必需的:输入电子邮件,如果我填写电子邮件字段,它将必须按照插入数据库时的状态进行验证。即使我删除了可为空的,即使我没有插入任何内容,邮件也会通过我输入的任何内容进行验证。为什么不使用“输入电子邮件”=>“电子邮件|必需”?因为我希望它能够发送空电子邮件,但如果发生这种情况,我将使用数据库中的值发送它,问题是,如果我在email字段中输入例如Test,它将进入数据库而不进行验证