Filtre internet tabanlı e-posta adresleri

2 Cevap php

Nasıl e-posta adresi mümkün olduğunca olmayan bir internet tabanlı olmak zorundadır e-posta adresleri için bir istemci tarafı doğrulama yapıyor hakkında gidebilirsiniz. yani yahoo, gmail ve yüzlerce izin verilmez. Mükemmel olmak zorunda değil ama ben sadece böyle bir e-posta adreslerinin geçerli olmanın tüm obivious senaryoları en aza indirmek istiyoruz.

Şu anda sadece geçerli (well. .. neredeyse geçerlidir) e-posta adresleri kontrol etmek için bir regex kullanabilirsiniz.

Herhangi bir düşünce?

2 Cevap

Ne olmayan bir webmail hesap gereği olarak okuyorum bu noktada şüpheli yarar ve aslında garanti etmek neredeyse imkansız. Bu gerçekten zor gereksinimleri parçası ise, gmail-gibi-ilköğretim-e göç etmiş insanlar ikincil bir hesabı kaydettirmek için ihtiyacınız olacak demektir ve bu, benim için, sitenizi karar benim şansınızı artıracak değer değildi ON kayıt.

(Regex doğrulayarak RFC2822 da günah olarak çirkin olduğu için) olduğunu söyledi, doğru RFC2822 adresleri, artı bir dışlama listesi doğrular bir regex, günah gibi çirkin olacak.

Son olarak, aynı zamanda istemci üzerinde doğrulama aslında koştu güvenmiyorum çünkü, sunucu tarafında bu gönderme doğrulamak gerekir gerçeğini hatırlıyorum.

Varsayarsak tarafından "non-internet" "Yerel" demek, o zaman çözüm oldukça basit olmalıdır: Eğer kabul posta adreslerini ev sahipliği yapmaya izin verilir Beyaz liste hostnamesini.

(Kendi sistemlerine bağlı olarak) biraz daha az maintainence gerekebilir biraz daha karmaşık bir çözüm, bir ülke ya da küresel üst düzey etki alanı ile biten tüm hostnames Kara, ve sonra kendi etki için bir istisna listesine sahip olacaktır.