如何验证电子邮件地址的用户名?

时间:2013-10-23 10:07:05

标签: php validation email-validation

我的代码如下,我可以验证域名,但即使域名有效,也无法验证用户名。

例如:

mon@hotmail.com  --- valid domain valid username  ---- pass
aksjdsk@hotmail.com ----- valid domain invalid username  ---- failed

赞赏是否有人可以提供帮助。

function domain_exists($email, $record = 'MX'){
list($user, $domain) = preg_split('/@/', $email);
return checkdnsrr($domain, $record);}

if(!domain_exists($email)){
echo "<script type='text/javascript'>window.alert('No have such email,invalid Domain. please enter valid email address!')</script>";
echo "<script type='text/javascript'>window.location='register.html'</script>";
exit;}

function user_exists($email, $record = 'MX'){
list($user, $domain) = preg_split('/@/', $email);
return checkdnsrr($user, $record);}

if(!user_exists($email)){
echo "<script type='text/javascript'>window.alert('No have such user, please enter valid email address!')</script>";
echo "<script type='text/javascript'>window.location='register.html'</script>";
exit;}

2 个答案:

答案 0 :(得分:2)

要知道的唯一方法是存在域名的特定用户名,就是向他们发送电子邮件,然后让他们点击该电子邮件中提供的链接。

abuse @ hotmail.com,x @ x.org和obama@whitehouse.gov可能都是有效的,并不意味着他们要求发送电子邮件,也不小心使用您可能发送的任何内容。

答案 1 :(得分:1)

有些网站会发送激活电子邮件。也许你必须使用它。

为此类

生成电子邮件的激活码
<?php $activation_code= md5(microtime().rand(1,9999999)); echo$activation_code; ?>

然后使用用户名的id或电子邮件注册此代码数据库并发送电子邮件此代码。 如果用户在一段时间内没有点击它,那么删除用户或阻止..