-1

以下にコードを示します。ドメインを検証できますが、ドメイン名が有効であってもユーザー名を検証できません。

例えば:

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;}
4

2 に答える 2

2

ドメイン名に特定のユーザー名が存在するかどうかを知る唯一の方法は、電子メールを送信し、その電子メールに記載されているリンクをクリックしてもらうことです。

Abuse@hotmail.com、x@x.org、および obama@whitehouse.gov はすべて有効である可能性がありますが、彼らがメールを要求したことを意味したり、あなたが送信する可能性のあるものを使用することを気にかけたりするわけではありません。

于 2013-10-23T10:11:01.743 に答える
1

一部のサイトでは、アクティベーションの電子メールが送信されます。多分あなたはこれを使わなければなりません。

このような電子メールのアクティベーションコードを生成します

<?php $activation_code= md5(microtime().rand(1,9999999)); echo$activation_code; ?>

次に、このコードデータベースをユーザー名のIDまたは電子メールで登録し、このコードを電子メールで送信します. ユーザーがしばらくクリックしない場合は、ユーザーを削除するかブロックしてください。

于 2013-10-23T10:21:18.360 に答える