我已经在laravel申请表中创建了一个接受电子邮件地址的编辑表。
我在服务器端使用过Laravel验证。
当我通过不带@的电子邮件时,它可以正确验证电子邮件地址。
但是问题是当我从电子邮件地址中删除.
(点)时,它接受了它作为有效的电子邮件地址。
请提供建议,为什么会这样。
答案 0 :(得分:5)
使用Laravel 7:您可以使用
'email' => 'email:rfc,dns'
答案 1 :(得分:4)
您可以轻松地做到:
$validator = Validator::make($request->all(), [
'Email'=>'required|email'
]);
答案 2 :(得分:0)
尝试一下,我改变答案
$this->validate($request, [
'email' => 'required|regex:/(.+)@(.+)\.(.+)/i',
]);
答案 3 :(得分:0)
不是laravel问题。从技术上讲,这是一个有效的电子邮件地址。
请注意,如果您告诉浏览器验证电子邮件地址,则该电子邮件地址也会通过。
但是您可以将这些软件包用于验证电子邮件
https://github.com/egulias/EmailValidator
首先,还要检查以下内容:https://laravel.com/docs/6.x/validation#rule-email
或者
使用checkdnsrr
函数
<?php
$email = 'email@gmail.com';
list($username, $domain) = explode('@', $email);
if (checkdnsrr($domain, 'MX')) {
echo "verified";
} else {
echo "failed";
}
答案 4 :(得分:0)
laravel emaill验证和独特的电子邮件插入数据库用于代码
'email_address' => 'required|email|unique:customers,email_address'