2013-11-15 169 views
-1

最近我注意到,有些人喜歡用「[email protected]如何檢查電子郵件地址是否存在?

我要檢查,如果在註冊表單中輸入的電子郵件是有效的,並存在

,並感謝您虛假的電子郵件註冊..

我不想發送任何東西:/當我搜索時,我發現一些叫做Mx的東西記錄瞭如何使用它?

+3

發送電子郵件的地址,如果你收到一封電子郵件回話說這是一個正確的電子郵件地址。這就像電話號碼或郵寄地址,你怎麼知道它們是有效的? _你不會(除非你與之互動) – Halcyon

+0

解析域名? –

+1

@MartinJames - 只會告訴你域名是否存在。 – Quentin

回答

0

你可以,如果輸入的電子郵件地址的域名具有使用下面的代碼有效的MX記錄:

checkdnsrr(preg_replace('/^[^@][email protected]/', '', $emailAddress), 'MX'); 

但checkdnsrr()不能在Windows平臺上運行

4

發送電子郵件有問題的地址可以通過一個鏈接回到你的網站。此鏈接應包含與相關用戶帳戶關聯的唯一令牌(或者,您也可以簡單地將用戶ID添加到URL中,以便知道驗證該令牌的帳戶)。當用戶點擊它時,你的網站應該驗證令牌。如果令牌有效,您的應用程序可以假定有問題的電子郵件地址存在並且它屬於該用戶。例如鏈接:

http://mywebsite.com/validate.php?user=2934&validate=37dbhjibh8879uhe98098ushy89d3dd3

哪裏2934是用戶ID和37dbhjibh8879uhe98098ushy89d3dd3是您發送出去,需要驗證令牌。

當用戶註冊後,您可以檢查電子郵件符合使用爲RFC 822語法:「咦?」

if(filter_var($email, FILTER_VALIDATE_EMAIL)) { 
    //Valid email! 
} 
+0

我不想發送任何東西:/當我搜索時,我發現一些叫做Mx的東西記錄如何使用它 – user2993931

+0

@ user2993931你不能看到電子郵件地址是否存在。該域可能是正確的,但電子郵件可能不是。 –

相關問題