Eğer bir üyelik sistemi, download sistemi vs. yapıyorsanız, işlem yaparken gelenin normal bir kullanıcı mı yoksa bir bot mu olduğunu kontrol etmeniz gerekir. Bunun için uzun uzadıya kod yazabilirsiniz elbetteki. Ama ocr sistemlerinden kaçmak biraz zor. İşte bunu başarıyla, üstelik client-side’da yapabilen ücretsiz bir araç reCaptcha. Programla dillerinden; ASP.NET, klasik ASP, PHP, Python, Perl, Ruby, Java ve ColdFusion için, Uygulama eklentileri olarak; WordPress, MediaWiki, phpBB, Movable Type, Drupal, Symfony, Typo3, NucleusCMS, vBulletin ve Joomla için desteğini esirgemiyor.
Buradan size uyan versiyonunu indirebilirsiniz. Sayfanızda kullanabilmeniz içinse şuradan API key‘iniz almanız gerekiyor. Ben ASP.NET C# ile bir uygulama yaptım. Ne kadar kolay kullanıldığını sizde görün istedim. API key olarak, şu dosya içerisindeki, sample klasörü içindeki, sample-csharp.aspx dosyasının kodlarını görüntüleyerek aldığım, API keyleri kullandım. İlk önce Visual Studio‘da bir Web projesi oluşturdum. “..\recaptcha-dotnet\recaptcha-dotnet\library\bin\Release” klasörü içerisindeki “Recaptcha.dll” dosyasını VS‘ya component olarak ekledim. reCaptcha componentini sayfaya sürükleyip bıraktım. Kodun HTML kısmı:
-
<%@ Page Language=”C#” AutoEventWireup=”true” CodeFile=”Default.aspx.cs” Inherits=”_Default” %>
-
<%@ Register Assembly=”Recaptcha” Namespace=”Recaptcha” TagPrefix=”recaptcha” %>
-
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
-
<html xmlns=”http://www.w3.org/1999/xhtml” ><head runat=”server”> <title>Recaptcha</title>
-
</head>
-
<body>
-
<form id=”form1¨ runat=”server”><div>
-
<recaptcha:RecaptchaControl ID=”RecaptchaControl1¨ runat=”server” PrivateKey=”Private Keyiniz Buraya Gelecek” PublicKey=”Public Keyiniz Buraya Gelecek” Theme=”blackglass” />
-
</div>
-
<asp:Button ID=”Button1¨ runat=”server” OnClick=”Button1_Click” Text=”Giriş” Width=”221px” /><br /><asp:Label ID=”Label1¨ runat=”server”></asp:Label>
-
</form>
-
</body>
-
</html>
Şu ise, code-behind‘ı:
-
using System;
-
using System.Data;
-
using System.Configuration;
-
using System.Web;
-
using System.Web.Security;
-
using System.Web.UI;
-
using System.Web.UI.WebControls;
-
using System.Web.UI.WebControls.WebParts;
-
using System.Web.UI.HtmlControls;
-
public partial class _Default : System.Web.UI.Page {
-
protected void Page_Load(object sender, EventArgs e){
-
}
-
protected void Button1_Click(object sender, EventArgs e){
-
if (RecaptchaControl1.IsValid){
-
Label1.Text = “Hoşgeldiniz!”;}
-
else
-
{
-
Label1.Text = “Çık Dışarı! :)”;}
-
}
-
}
İşte bu kadar basit ![]()
E-mail ile takip et

2 Yorumlar
at 09:53 - 16th Şubat 2008 Permalink
çok çok iyi
at 14:35 - 18th Şubat 2008 Permalink
bende böyle bişey yapmıştım. Ama özel bir component ile değil kendi kodlarımla. bir örneğini code project te bulabilirsiniz.
Yorum Yaz