2010-08-24 211 views
0

在新用戶註冊頁面中,如何檢查用戶輸入的電子郵件ID是否有效?我想在用戶提交他的信息之前檢查輸入的電子郵件ID實際上是否存在。請不要給出使用正則表達式檢查電子郵件ID字符串的代碼,我想檢查輸入的電子郵件ID是否確實存在。電子郵件ID驗證

+0

用戶填寫新的用戶註冊頁面後,用戶被重定向到paypal網站並且必須支付訂閱費用。在繳納訂閱費用後,用戶賬戶將被激活並且自動生成的電子郵件將被髮送到指定的電子郵件ID,訪問網站的用戶名和密碼將通過該電子郵件發送。如果用戶沒有提供現有的電子郵件ID,則意味着訂閱費用會從他們的帳戶中扣除,但用戶不會收到登錄信息郵件。 – banupriya 2010-08-24 10:35:16

+0

來自Forgot password功能的進一步通信和郵件將僅發送到該特定帳戶。如果用戶提供了一些無效的電子郵件ID(即使是錯誤的),這會造成很多混亂,因此有必要驗證emailid! – banupriya 2010-08-24 10:36:15

回答

3

你不能「檢查」是可靠的。您需要「詢問」,用您的用戶必須在您的網站上輸入的密碼向該地址發送電子郵件,或者鏈接到用戶必須點擊的密碼。

編輯:關於可靠的部分。
雖然SMTP服務器可能會迴應郵件地址無效,但他們通常不會,因爲這可以幫助垃圾郵件發送者更容易地識別有效地址。這還需要您的代碼直接與負責每個域的SMTP服務器通話。通常你通過本地SMTP服務器發送郵件,這個服務器負責將郵件轉發給正確的收件人。

然而,您可以做的是至少通過詢問您最喜歡的DNS服務來檢查域是否存在。

1

爲了做到這一點,你需要telnet到電子郵件提供商,以檢查它是否存在。舉個例子,Hotmail不會允許你這樣做。

+0

如果電子郵件提供商擁有此功能,它是否會被濫用?電子郵件地址農業等 – 2010-08-24 09:17:23

+0

@Tom Gullen:我同意。我只是說這就是你如何使用它來做到這一點。驗證電子郵件是最近的發展方向,但延遲了整個「創建新用戶」流程。 – 2010-08-24 09:18:42

0

這取決於電子郵件提供商。大多數提供商阻止此選項,以防止垃圾郵件發送者知道哪個地址有效...

1

唯一100%準確的方法是發送一封電子郵件並要求用戶點擊該電子郵件中的鏈接以完成註冊。

簡而言之,有一個連接到郵件服務器的可靠方法。我會看看我能不能找到一篇好文章(here you go),並很快編輯這篇文章。