r_mehrizi
دوشنبه 31 تیر 1387, 12:51 عصر
من یک فرم ثبت نام طراحی کردم که اطلاعات کاربران را میگیره در آخر فرم هم از تصاویر امنیتی استفاده شده وقتی کاربر بر روی دکمه ثبت نام کلیک میکنه باید بررسی بشه که کاربر اطلاعات را درست وارد کرده یانه اگه اطلاعات درست بود کاربر عضو میشه اما مشکل اینجاست که وقتی کاربر روی دکمه ثبت کلیک میکنه صفحه دوباره لود میشه و تصویر امنیتی من عوض میشه در نتیجه پیغام میده که اطلاعات درست وارد نشده .
کاری که من کردم اینه که قسمتی که مربوط به تصویر امنیتی بوده را داخل postback نوشتم به این صورت:
If Not IsPostBack Then
Dim simg As SecurityImage
simg = New SecurityImage(SecurityLevel.VeryHigh)
simg.Generate()
ViewState("rbVeryHigh") = simg.Code
iVeryHigh.ImageUrl = simg.SecurityImageUri
Dim md5 As MD5CryptoServiceProvider
md5 = New MD5CryptoServiceProvider
Dim securityCodeBytes As Byte() = Encoding.ASCII.GetBytes(simg.Code.ToLower())
Dim hashedBytes As Byte() = md5.ComputeHash(securityCodeBytes, 0, securityCodeBytes.Length)
Dim b64str As String = Convert.ToBase64String(hashedBytes, 0, hashedBytes.Length)
hiHashedSecurityCode.Value = b64str.Substring(0, b64str.Length - 2) ';
End If
مشکلی که الان دارم اینه که هر بار صفحه را رفرش می کنم تصویر عوض نمیشه
کاری که من کردم اینه که قسمتی که مربوط به تصویر امنیتی بوده را داخل postback نوشتم به این صورت:
If Not IsPostBack Then
Dim simg As SecurityImage
simg = New SecurityImage(SecurityLevel.VeryHigh)
simg.Generate()
ViewState("rbVeryHigh") = simg.Code
iVeryHigh.ImageUrl = simg.SecurityImageUri
Dim md5 As MD5CryptoServiceProvider
md5 = New MD5CryptoServiceProvider
Dim securityCodeBytes As Byte() = Encoding.ASCII.GetBytes(simg.Code.ToLower())
Dim hashedBytes As Byte() = md5.ComputeHash(securityCodeBytes, 0, securityCodeBytes.Length)
Dim b64str As String = Convert.ToBase64String(hashedBytes, 0, hashedBytes.Length)
hiHashedSecurityCode.Value = b64str.Substring(0, b64str.Length - 2) ';
End If
مشکلی که الان دارم اینه که هر بار صفحه را رفرش می کنم تصویر عوض نمیشه