PDA

View Full Version : مشکل با مقدار cookie



mk88km
شنبه 18 اسفند 1386, 18:03 عصر
سلام به همه
من دارم از Cookie استفاده می کنم . تو صفحه Login میخوام اطلاعات Cookie را تو یه textbox نمایش بدم اما به شکل کارکترهای کد شده نمایش می ده.
server.UrlDecode, server.UrlEncode, server.htmlDecode, server.HtmlEncode رو امتحان کردم جواب نمی ده .
ممنون می شم اگه کسی اطلاعات بده

DotNet_King
شنبه 18 اسفند 1386, 18:51 عصر
تو ادیتور دات نت روی سورس html صفحه برید و گزینه شبیه به save advance رو انتخاب کنید بعد از تو کومبو باکس -شبیه به این - unicod withsignature -65001 رو انتخاب کنید شاید مشکلتون حل شه؟

mk88km
یک شنبه 19 اسفند 1386, 15:27 عصر
من می خوام چیزی رو که کاربر می بینه درست باشه نه اینکه save کنه.

DotNet_King
یک شنبه 19 اسفند 1386, 17:18 عصر
من هم دقیقا همین رو گفتم!! از اونجایی که تا حالا به این مشکل نخوردم، گفتم حتما تو یونیکد کردن صفحه مشکلی پیش اومده که باعث میشه این مدلی کوکی هاتون در آد! اون متنی هم که آورده بودم روش save کردن صفحه نبود!!!! بلکه تغییر encoding صفحه بود که شما حتی امتحانش هم نکردید ببینید چیه!!!؟؟ نمی دونم جواب میده یا نه! فقط نوشته بالا را به این صورت تصحیح می کنم save advance option>>>unicode(utf-8 with signature) - codepage 65001

mk88km
سه شنبه 21 اسفند 1386, 10:58 صبح
دوست عزیز، من چیزی رو که شما گفته بودین یعنی (تغییر PageEncoding ) رو انجام دادم اما نتیجه نداشت. حدس زدم شاید منظورتون ذخیره صفحه است.
در ضمن یه چیز جدید پیدا کردم این مشکل روی WinServer2003,iis6 وجود نداره . شاید به تنظیمات پیش فرض iis برگرده.
اگه کسی چیزی به ذهنش رسید لطفا یاری کنه.

raravaice
سه شنبه 21 اسفند 1386, 11:18 صبح
اما به شکل کارکترهای کد شده نمایش می ده.


یه نمونه از اصل دیتا و دیتایی که توی کوکی ذخیره میشه بزارید اینجا بررسی کنیم.
و همچنین سورسی که باهاش کوکی رو میسازید.
خیلی جالبه!

موفق باشید

Pouria.NET
سه شنبه 21 اسفند 1386, 16:36 عصر
با استفاده از Dictionary-based syntax اگه به Cookie Collection دسترسی پیدا کنید که این مشکل وجود ندارد!!!!!!!

Pouria.NET
سه شنبه 21 اسفند 1386, 16:42 عصر
این کد رو ببین:


Dim FName, LName As String
Dim myCookie As HttpCookie = Request.Cookies("SomeName")
If Not myCookie Is Nothing Then
'Read the items in Cookie
FName = myCookie("FirstName")
LName = myCookie("LastName")
Else
'Create the cookie
myCookie = New HttpCookie("SomeName")
'Persist the cookie for future usage
myCookie.Expires = Date.Now.AddDays(35)
myCookie("FName") = txtFName.Text
myCookie("LastName") = txtLName.text

Response.Cookies.Add(myCookie)
End If

mk88km
یک شنبه 26 اسفند 1386, 09:33 صبح
ممنون از توجه دوستان،
گفته بودین نمونه کد رو بذارم.
مثلا برای کلمه "محمدی" چیزی که به من نمایش میده به شکل زیره "ظ…ط­ظ…ط¯ظٹ"
اون Dictionary رو هم بررسی می کنم.
بازم ممنون می شم اگه کسی راهنمایی داشته باشه.

mk88km
یک شنبه 26 اسفند 1386, 09:35 صبح
نمی دونم جرا کارکتر کد شده دوباره کد شد ؟
شکل درستش اینه"ظ…ط­ظ…ط¯ظٹ"

raravaice
یک شنبه 26 اسفند 1386, 10:33 صبح
کاراکترهای شما به هر دلیلی UTF8 نمیشه با کد زیر امتحان کن اگر بازم نشد مقادیر رو با base64 کد کن توی کوکی و موقع فراخوانی decode کن.



Dim a As String = "محمدی"
Dim b() As Byte
b = System.Text.Encoding.UTF8.GetBytes(a)
a = System.Text.Encoding.UTF8.GetString(b)
Response.Cookies.Item("sss").Value = a


موفق باشید