PDA

View Full Version : بررسی صحت Captcha



whiterabbit
دوشنبه 11 شهریور 1392, 16:53 عصر
من با این کد یک Captcha ایجاد می کنم و تو یک تگ image نمایش میدم
حالا فقط نمی دونم چه جوری باید صحتش و با if بررسی کنم؟
TxtEmail.Attributes.Add("onblur", "WaterMark(this, event);");

TxtEmail.Attributes.Add("onfocus", "WaterMark(this, event);");

txtUserName.Focus();
string mychar = "abcdefghijklmnopqrstuvwxyz1234567890";
Random r = new Random();
int s1 = r.Next(1, 36); // 36 = tedad horof + tedad argham shoma mitavanid horof bozorg ra ham ezafeh konid dar moteqaier mychar
int s2 = r.Next(1, 36);
int s3 = r.Next(1, 36);
int s4 = r.Next(1, 36);
int s5 = r.Next(1, 36);
int s6 = r.Next(1, 36);

//sakhtane tak tak e harfhaye tasadofi reshteh
string ss1 = mychar.Substring(s1, 1);
string ss2 = mychar.Substring(s2, 1);
string ss3 = mychar.Substring(s3, 1);
string ss4 = mychar.Substring(s4, 1);
string ss5 = mychar.Substring(s5, 1);
string ss6 = mychar.Substring(s6, 1);

string targetstr = ss1 + ss2 + ss3 + ss4 + ss5 + ss6.ToString();


Session.Add("reshteh", targetstr);// add matn dar session
Bitmap b = new Bitmap(Server.MapPath("~/Captcha/CaptchaImg.jpg"));//gereftane masir aks va rikhtane an dar b
Graphics g1 = Graphics.FromImage(b);

//tanzim font reshteh rooye aks
g1.DrawString(targetstr, new Font("tahoma", 20), SystemBrushes.WindowText, new PointF());

//sakhtane aks jadid
b.Save(Server.MapPath("~/Captcha/Captcha.jpg"));
imgA.ImageUrl = "~/Captcha/Captcha.jpg";

amin750
دوشنبه 11 شهریور 1392, 21:03 عصر
این یه کامپوننت آمادس با قابلیت ادیت
لینک (http://barnamenevis.org/showthread.php?260009-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B1-%DA%A9%D8%AF%D9%87%D8%A7%DB%8C-%D8%A7%D9%85%D9%86%DB%8C%D8%AA%DB%8C-Captcha)

sasanrstm
چهارشنبه 13 شهریور 1392, 00:16 صبح
خب شما یه تکست میزاری که وقتی کلمات وارد اون شد با این کد تست کنه اگه برابر بود کدت اجرا بشه اگه برابر نبود خطا بده


try
{

if (txtAmniat.Text == Session["reshteh"].ToString() && (txtAmniat.Text != ""))
{
for (int i = 0; i < 10000; i++)
کد های خودت
else
{
Label3.Text = " متن داخل كادر را درست وارد نكرده ايد";
}
}
catch
{
}
txtAmniat.Text = "";