bu konu ile ilgili ilk mesajımda ileri seviye konuya girmek istemiyorum dedim ama yazmadanda olmuyor işte..
captcha ile maalesef ön yargılı yaklaşımlar her yerde çok olur..nedeni ise doğru çalıştırılmadığı için..oysa bununda jcaptcha olan farklı sürümleri var..
kurulumunu bırakalım bu hizmeti çok iyi veren captcha siteleri var..
daha ileri gidelim madem
kullanıcıya görünmesi engellenmiş bir input oluşturun.mantık çok basit eğer bu input dolu gelirse bu formun bir spam robotu tarafından yazıldığı kesindir.. hemen örneğini verelim o zaman..
ismini herhangi bir şey koyabileceğimiz bir input oluştururuz.
<input name="kaldera" type="text" value=""/>
name değişkenin içindeki parametredir bu...programlamayı bilenler hatırlayacaklardır.
sayfanın üstündeki stil kısmına aşağıdaki gibi bir sınıflama yapılması gerekmektedir..
<style>
.sakla {
display: none;
}
</style>
sonra hazırladığımız bu inputu kulllanıcının görmemesi için gizleyelim.
<div class="sakla"><input name="kaldera"text" value=""/></div>
form onaylandıktan sonrada kaldera isimli inputun boş olması gerektiğini test edilmesi gerekecektir. şöyleki.;
if (strlen(trim($_POST['kaldera'])) > 0){
//spam mesaj reddet }
bu şekildede çözümlenebilir..
-----------------------------------------------------------------------------------------
bir arkadaşım başka bir yerde şunları önermiş..bende katılıyorum ama biraz paronoyak yanları var..
Kesinlikle ip banlama yöntemine gitmemiz gerekiyor. Zira botlar proxy kullanıyor olabilirler ve siz aslında zararsız bir bloğu banlamış olabilirsiniz. Bu da ziyaretçi kaybı demek.
Yorumlarda HTML kullanımına izin vermeyin. Hatta <a> tagini bile kullanmalarına izin vermeyin. Eğer link vermek istiyorlarsa site adresini
www.site.com olarak yazdıklarında bunu otomatik olarak <a> tagine çeviren bir sitem kullanın (çoğu blog sisteminde vardır).
Eğer HTML i kapatmak istemiyorsanız, blog sisteminizde tüm <a> taglerine rel="nofollow" eklemesini sağlayın. Yani <a href="http://www.site.com/" rel="nofollow">anahtar kelime</a> şeklinde bir kullanım olacak. Bu sayede diğer botlar bu bağlantıyı yoksayacaktır.
Formlarda "name", "comment" gibi klasik isimler yerine botlar tarafından otomatik doldurulamayacak isimler seçin. Name yerine pikacu gibi
Çoğu üyelik formunda gördüğünüz gibi captchalar (bir imaj üzerinde, botların okuyamadığı, dağınık karakterlerle yazılmış onay yazıları) koyun. Bu sayede sadece "insanlar" yorum yazabilecektir. Ancak yorumlayanlar için de ekstra bir işlem olduğunu varsayarsak pek de kullanıcı dostu değil.
Üyelik sistemi getirin veya girilen yorumlar yayınlanmadan önce onayınızdan geçsin.
Filtreleme yöntemi getirin. Misal içinde viagra kelimesi geçen bir bağlantı verildiğinde bunu otomatik olarak filtreleyen bir sistem geliştirin.
ALINTIDIR..