ali_autumnal
سه شنبه 12 مهر 1390, 13:04 عصر
با سلام و خسته نباشید
یه تابعی نوشتم کد امنیتی تولید میکنه. این تابع رو تو رویداد page load فراخوانی می کنم. مقدار رشته رو به فرم زیر ذخیره می کنم:
if (Session["key"] != "true")
{
string strPath = null;
strPath = draw(ref strText);
Session.Add("TextCode", strText);
Image1.ImageUrl = strPath;
Session.Add("key", "true");
}
دستور چک کردن کد رو هم به این شکل نوشتم:
string st = Session["TextCode"].ToString();
if (txtCode.Text.Trim() != st)
{
lblText.Text = "خطا هنگام ارسال اطلاعات" + "<br />" + "کاربر گرامی: کد امنیتی را بدرسی وارد نمائید.";
lblText.Visible = true;
txtCode.Text = "";
Session.RemoveAll();
return;
}
اگه کاربر بدرستی کد رو وارد کنه مشکلی نیست. اما اگه یه بار اشتباهی وارد کنه به مشکل برمیخوره. عکس جدید مدام تولید میشه و Session ای هم وجود نخواهد داشت.
چیکار کنم به این مشکل بر نخورم؟
آیا فراخوانی تابع تولید کد امنیتی نباید تو رویداد page load اتفاق بیفته؟ اگه نه پس کجا فراخوانی بشه بهتره؟
متشکرم
علی پاییزی
وب سایت (http://www.babamoradi.ir/)
یه تابعی نوشتم کد امنیتی تولید میکنه. این تابع رو تو رویداد page load فراخوانی می کنم. مقدار رشته رو به فرم زیر ذخیره می کنم:
if (Session["key"] != "true")
{
string strPath = null;
strPath = draw(ref strText);
Session.Add("TextCode", strText);
Image1.ImageUrl = strPath;
Session.Add("key", "true");
}
دستور چک کردن کد رو هم به این شکل نوشتم:
string st = Session["TextCode"].ToString();
if (txtCode.Text.Trim() != st)
{
lblText.Text = "خطا هنگام ارسال اطلاعات" + "<br />" + "کاربر گرامی: کد امنیتی را بدرسی وارد نمائید.";
lblText.Visible = true;
txtCode.Text = "";
Session.RemoveAll();
return;
}
اگه کاربر بدرستی کد رو وارد کنه مشکلی نیست. اما اگه یه بار اشتباهی وارد کنه به مشکل برمیخوره. عکس جدید مدام تولید میشه و Session ای هم وجود نخواهد داشت.
چیکار کنم به این مشکل بر نخورم؟
آیا فراخوانی تابع تولید کد امنیتی نباید تو رویداد page load اتفاق بیفته؟ اگه نه پس کجا فراخوانی بشه بهتره؟
متشکرم
علی پاییزی
وب سایت (http://www.babamoradi.ir/)