by Uğur Çelenk
1. Ocak 2009 09:59
Sitelerimizde yayınladığımız e-mail adresleri yüzünden tonla spam mail alabiliyoruz. Genellikle gerilla pazarlama yapanların/yapmaya çalışanlar sitelerden mailleri toplayan bir bot yazdırıp, topladıkları mail adreslerine belli sürelerle mail atıyor ve bizler de onca spam mailin arasından mail ayıklamak zorunda kalabiliyoruz.
Çözüm olarak email adreslerini imaj dosyası olarak koyanlar var ama doğru çözüm değil, email adresini copy-paste yapmak isteyenler yapamıyor. Sitelerden mail adreslerini toplayan botlar, genellikle sayfanızda "@" işaretini arar, bulduğu noktada email adresini alır, eğer @ işareti geçmezse bir sorun olmayacaktır. Bu düşünce de yola çıkaraktan Asp.NET ile yapmış olduğunuz sayfalarda aşağıdaki fonksiyonu kullanabilirsiniz..
Fonksiyon : (namespace olarak using System.Text; eklemeniz gerekmektedir.)
public string EmailKoruyucu(string email)
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < email.Length; i++)
{
sb.AppendFormat("&#{0};", (Int32)email[i]);
}
return sb.ToString();
}
Kullanımı :
string email = "ugur@ugurceXXXXX.com";Response.Write(email.EmailKoruyucu());
Html Çıktısı :
ugur@ugurceX XXXX.com
Yukarıda html çıktısıdır ama ekranda yine ugur@ugurcexxxxx.com olarak göreceksiniz.
Spam botlardan kurtulma da sizlere yardımcı olacağını düşünüyorum..