ورود

View Full Version : تداخل اطلاعات



ar_monti@
یک شنبه 11 مهر 1389, 11:14 صبح
با سلام
من مشکلی دارم مبنی براینکه صفحاتم بصورت کارتابلی هستند و هر یوزر می بایستی کارتابل مربوط به خودش را ببیند . با استفاده از Session ها اینکار را انجام داده ام اما گاهی اوقات خوب عمل نمی کند و مثلا یوزر A وقتی داخل سایت میشه اطلاعات یوزر B را می بیند و این برای من بسیار دردسر ساز شده نمیدونم چه جوری آنها را هندل کنم.
در ضمن بعضی اوقات وقتی یک یوزر اطلاعاتی را در یک صفحه وارد می کند و آن را در دیتا بیس ذخیره میکند برای یک کاربر دیگه ذخیره میشه!
من برای انتقال یک دسته ای از فیلدهای اطلاعاتی از یک صفحه به صفحه دیگر از Session ها استفاده می کنم با این حال نمیدانم چرا باز این مشکلات را دارم.
خواهش می کنم مرا راهنمایی کنید
متشکرم

PhoenixNet
یک شنبه 11 مهر 1389, 11:55 صبح
سلام

به نظر میرسه کد شما مشکل داره وگرنه Session گاهی اوقات خوب عمل نمی کند ندارد که.

saeed262626
یک شنبه 11 مهر 1389, 11:56 صبح
سلام
ممكنه بيشتر توضيح بدي؟ كي اين مورد پيش مياد، زماني كه جند كاربر همزمان LOG IN كردن و دارن كار مي كنن؟

PhoenixNet
یک شنبه 11 مهر 1389, 12:13 عصر
سلام

بهترین کار اینه که از Asp .NET Membership استفاده کنی.

به صورت ساده وقتی کاربر نام کاربری و رمز رو میزنه و وارد سایت میشه خط زیر رو اجرا کن



System.Web.Security.FormsAuthentication.SetAuthCoo kie("userName", false);


این خط یه کوکی رمز نگاری شده برای هر کاربر درست میکنه.به جای userName اسم کاربر خوتو بذار

برای دسترسی به نام کاربری کاربر جاری :



string userName= HttpContext.Current.User.Identity.Name;



برای اینکه ببینی کاربر مجاز یعنی لوگین کرده :




if (HttpContext.Current.User.Identity.IsAuthenticated )
{
//do something.......
}
else
{
Response.Redirect("/Login.aspx");
}



وقتی کاربر دکمه خروج رو میزنه :



System.Web.Security.FormsAuthentication.SignOut();




این ساده و راحت کارتم راه میندازه .

برای مطالعه بیشتر :

http://msdn.microsoft.com/en-us/library/yh26yfzy.aspx

adibadm
یک شنبه 11 مهر 1389, 12:23 عصر
دوست عزيز منم مشكل شما رو داشتم.هميشه اطلاعات آخرين نفري رو كه لاگين مي كرد نمايش مي داد.
مشكل كارم من اين بود كه از متغيير هاي static استفاده كرده بودم.

ar_monti@
یک شنبه 11 مهر 1389, 12:43 عصر
ممنون از پاسخ هایتان ، بایستی عرض کنم معمولا این مشکا موقعی بیشتر میشود که سایت دارای ترافیک بیشتری باشد و یا اینکه دیتا بیس (اوراکل) دچار کندی باشد.

ar_monti@
سه شنبه 13 مهر 1389, 14:53 عصر
سلام
دوستان راه حلی ارائه نمیدهند؟

PhoenixNet
چهارشنبه 14 مهر 1389, 14:51 عصر
سلام
دوستان راه حلی ارائه نمیدهند؟

پس این همه رو برای کی نوشتم.