"> آموزش ساخت simple Captcha در ASP.NET

آموزش ساخت simple Captcha در ASP.NET

simple Captcha

در این مقاله قصد داریم پیاده سازی simple Captcha درasp.net را بررسی کنیم.CAPTCHA مخفف جمله Completely Automated Public Turing Test To Tell Computers and Humans Apart بوده و به معنی “آزمایش

اتوماتیک عمومی برای تشخیص انسان از کامپیوتر” می باشد. کپچا در سال ۲۰۰۰ و در دانشگاه Carneige Mellon توسط Luis von Ahn و همکارانش ساخته شد و برای اولین بار در سایت Yahooo مورد استفاده قرار گرفت.

گام اول:  یک پروژه جدید ایجاد کنید.

به ترتیب به File ، New ، Project رفته و asp.net web forms application را انتخاب کنید .سپس به Entry Application Name بروید و در نهایت روی OK  کلیک کنید.

simple Captcha

گام دوم: یک ارجاع از   “SRVTextToImage.dll”را اضافه کنید.

از این لینک، SRVTextToImage.dll را دانلود کنید.

به قسمت Solution Explorer رفته و روی References راست کلیک کنید به ترتیب به  Add Reference…  و Browse رفته و “SRVTextToImage.dll” را انتخاب کنید و در آخرOK.

 

گام سوم: یک صفحه جدید اضافه کنید و برای پیاده سازی simple Captcha ، آن را طراحی کنید.

به قسمت Solution Explorer رفته و روی Project name راست کلیک کنید به ترتیب به Add  وNew item رفته و web form/ web form using master page را انتخاب کنید. حالا نام صفحه را وارد کنید و در آخر Add.

.

در اینجا “Feedback.aspx” را ایجاد کردم.


<table>

<tr>

<td>Email ID : </td>

<td><asp:TextBox ID="txtEmailID" runat="server" Width="300px"></asp:TextBox></td>

</tr>

<tr>

<td>Your Feedback :</td>

<td>

<asp:TextBox ID="txtFeedback" runat="server" TextMode="MultiLine" Width="300px" Height="50px" />

</td>

</tr>

<tr>

<td>

Security Code :

</td>

<td>

<asp:Image ID="imgCaptcha" runat="server" ImageUrl="~/CaptchaImage.aspx" />

</td>

</tr>

<tr>

<td></td>

<td>

<asp:TextBox ID="txtCaptchaText" runat="server" Width="100px" /> [Type Security code here]

</td>

</tr>

<tr>

<td></td>

<td>

<asp:Button ID="btnSubmit" runat="server"  Text="Submit" OnClick="btnSubmit_Click"/>

</td>

</tr>

<tr>

<td></td>

<td>

<asp:Label ID="lblMessage" runat="server" />

</td>

</tr>

</table>

گام چهارم: یک صفحه جدید برای تولید Captcha Image اضافه کنید.

به قسمت Solution Explorer رفته و روی Project name راست کلیک کنید به ترتیب به Add  وNew item رفته و web form را انتخاب کنید. حالا نام صفحه را وارد کنید و در آخر Add.

.

در اینجا “CaptchaImage.aspx”را ایجاد کردم.

[asp] <%@ Page Language=”C#” AutoEventWireup=”true” CodeBehind=”CaptchaImage.aspx.cs” Inherits=”ASPCreateCaptcha.CaptchaImage” %>

[/asp]

توجه: تمامی کدهای html را از صفحه حذف کرده و از master page استفاده نکنید.

 

گام پنجم: کدهای زیر را در صفحه page_load event از  “CaptchaImage.aspx” وارد کنید.این کار برای تولید Captcha Image است.

موارد زیرا را وارد کنید:


using SRVTextToImage;

using System.Drawing;

using System.Drawing.Imaging;

&nbsp;

&nbsp;

&nbsp;
protected void Page_Load(object sender, EventArgs e)

{

CaptchaRandomImage CI = new CaptchaRandomImage();

// GetRandomString Function return random text of your provided characters size

string captchaText = CI.GetRandomString(5);

&nbsp;

//GenearteImage  function return image of the provided text of provided size

//CI.GenerateImage(captchaText, 200, 50);

//there is a overload function available for set color of the image

Session["CaptchaText"] = captchaText;

CI.GenerateImage(captchaText, 200, 50, Color.DarkGray, Color.White);

&nbsp;

this.Response.Clear();

this.Response.ContentType = "image/jpeg";

CI.Image.Save(this.Response.OutputStream, ImageFormat.Jpeg);

CI.Dispose();

}

&nbsp;

گام ششم: برای اعتبارسنجی Captcha، کدهای زیر را در button click event وارد کنید.(در این صفحه Feedback.aspx )

به قسمت Solution Explorer رفته و روی Project name راست کلیک کنید به ترتیب به Add  وNew item رفته و web form/ web form using master page را انتخاب کنید. حالا نام صفحه را وارد کنید و در آخر Add.


protected void btnSubmit_Click(object sender, EventArgs e)

{

// Other Validation Here

&nbsp;

// Here I will validate Captcha

bool isCaptchaValid = false;

if (Session["CaptchaText"] != null && Session["CaptchaText"].ToString() == txtCaptchaText.Text)

{

isCaptchaValid = true;

}

&nbsp;

if (isCaptchaValid)

{

lblMessage.Text = "Captcha Validation Success";

lblMessage.ForeColor = Color.Green;

}

else

{

lblMessage.Text = "Captcha Validation Failed";

lblMessage.ForeColor = Color.Red;

}

&nbsp;

// Write Remaining code here for perform insert / update etc...

}

حال میتوانید برنامه را اجرا کنید.

  • پسورد: www.mspsoft.com
پویا قربانی

نوشته‌های مرتبط

دیدگاه‌ها

*
*

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.

    milads پاسخ

    ممنون از شما عالی بود

      مسعود شریفی پاسخ

      قربانه شما موفق پیروز باشید.

کدیشن ! مارکت پروژه های برنامه نویسی راه اندازی شدیه توکه پا بریم ببینم