PDA

View Full Version : سوال: تاریخ آخرین لاگین



Mohandes2009
سه شنبه 11 آبان 1389, 16:28 عصر
سلام

من می خوام هر وقت که کاربرم وارد سایت شد بهش بگم آخرین بازدیدش کی صورت گرفته
توی جدول اعضا برای هر کاربر فیلد در نظر گرفتم به نام آخرین بازدید کی باید این فیلد رو اپدیت کنم و چطوری؟

حال شما چه توصیه ای دارید کی و کجا و چطور من زمان آخرین بازدید رو به کاربرم نشون بدم
کی و کجا و چطور آخرین بازدید کاربرم رو آپدیت کنم؟


و کدش چجوری هست؟:متفکر:

مثلا بتونم نشون بدم : آخرین بازدید شما سه شنبه 11 آبان 1389 در ساعت 14:26 عصر.

baran_mehr
سه شنبه 11 آبان 1389, 18:36 عصر
سلام خوبی؟
خوب هر وقت که کاربرت وارد سایت شد (login کرد) تو بیا مقدار اون فیلد رو ویرایش کن و مقدار جدید رو بزار

Mohandes2009
سه شنبه 11 آبان 1389, 18:45 عصر
سلام خوبی؟
خوب هر وقت که کاربرت وارد سایت شد (login کرد) تو بیا مقدار اون فیلد رو ویرایش کن و مقدار جدید رو بزار
دوست عزیز زمانی که لاگین میکنه باید از دیتا بیس بخونه و بریزه تا اینجا هیچی زمانی که خروج میکنه از کجا بفهمم که آپدیت کنم؟
شاید خروج نکرد از سایت و پنجره مرورگر را بست چجوری بفهمم خارج شده که دوباره آپدیت بشه؟
:متفکر:

baran_mehr
سه شنبه 11 آبان 1389, 18:49 عصر
اصلا تو چیکار به خروج این بنده خدا داری بزار بره دنبال زندگیش:لبخند:
تو میخوای بدونی که اخرین بار کی وارد سایت شده، خوب پس بعد از هر لوگین اپدیتت رو انجام بده
یعنی همون جا که داری چک میکنی کاربر رمز و کلمه عبورش صحیح هست یا نه ، اگر کاربر مجاز بود تو تغییر تو دیتابیس رو هم انجام بده
درست شد

Mohandes2009
سه شنبه 11 آبان 1389, 19:22 عصر
اصلا تو چیکار به خروج این بنده خدا داری بزار بره دنبال زندگیش:لبخند:
تو میخوای بدونی که اخرین بار کی وارد سایت شده، خوب پس بعد از هر لوگین اپدیتت رو انجام بده
یعنی همون جا که داری چک میکنی کاربر رمز و کلمه عبورش صحیح هست یا نه ، اگر کاربر مجاز بود تو تغییر تو دیتابیس رو هم انجام بده
درست شد
من از لاگین خود ASp استفاده مینکنم .....در اینصورت چی؟

تازه کارم هنوز نمی دونم منا عف کنید :خجالت: آره درسته چیکار دارم کی رفته بیرون:لبخند:

baran_mehr
سه شنبه 11 آبان 1389, 20:03 عصر
حالا چون تازه کاری این بارو می بخشم اما دفعه بعد تکرار بشه خودت میدونی ها:لبخند:
من از لاگین ها استفاده نمیکنم
اما تا اونجایی که اطلاع دارم میشه چک کردن اینکه کاربر وجود داره یا نه رو با کد فراخونی کرد شما هم میتونید این کار رو انجام بدید و یا در اولین صفحه بعد از لوگین عمل ویرایش رو انجام بدید

pedram_ns
سه شنبه 11 آبان 1389, 22:09 عصر
اگر بعد از لاگین اپدیت کنن خوب تاریخ امروز جایگزین می شه و همیشه آخرین تاریخ ورود رو همین امروز می زنه.
شاید بهتر باشه بعد از لاگین اول آخرین تاریخ ورود رو در یک کوکی یا سژن ذخیره کنید بعد عمل اپدیت رو انجام بدید و حالا در هر صفحه که می خواهید اخرین تاریخ ورود کاربر رو نشون بدید از کوکی بخونید.

M1450M
سه شنبه 11 آبان 1389, 23:05 عصر
یه نظرم میشه واسه این کار 2تا فیلد تاریخ در نظر گرفت .
مثلا t1 واسه زمان آحرین ورود و t2 برای زمان ورود فعلی . وقتی کاربر دکمه ورود رو میزنه t1 نمایش داده بشه و بعد t2 داخل t1 کپی بشه .
این کار چطوره به نظرتون ؟:متفکر:

Mohandes2009
سه شنبه 11 آبان 1389, 23:31 عصر
اگر بعد از لاگین اپدیت کنن خوب تاریخ امروز جایگزین می شه و همیشه آخرین تاریخ ورود رو همین امروز می زنه.
شاید بهتر باشه بعد از لاگین اول آخرین تاریخ ورود رو در یک کوکی یا سژن ذخیره کنید بعد عمل اپدیت رو انجام بدید و حالا در هر صفحه که می خواهید اخرین تاریخ ورود کاربر رو نشون بدید از کوکی بخونید.
خب یعنی من امروز لاگین کنم میزنه سه شنبه و تو دیتا بیس ذخیره میشه

حالا فردا دوباره ورود کردم به سایت! میزنه سه شنبه ولی اون 4شنبه را تو دیتا بیس باید ذخیره کنه آره!!
این درسته!
یعنی تاریخ آخرین لاگین را از دیتا بیس بخونم!و بعد تاریخ امروز را جایگزین اون فیلد کنم آره؟:متفکر:

Mohandes2009
سه شنبه 11 آبان 1389, 23:33 عصر
یه نظرم میشه واسه این کار 2تا فیلد تاریخ در نظر گرفت .
مثلا t1 واسه زمان آحرین ورود و t2 برای زمان ورود فعلی . وقتی کاربر دکمه ورود رو میزنه t1 نمایش داده بشه و بعد t2 داخل t1 کپی بشه .
این کار چطوره به نظرتون ؟:متفکر:

خب توی یه سشن ذخیره بشه راحت تر نیست؟

دوتا فیلد منظورتون فیلد توی دیتا بیس بود؟:متفکر:اگه منظورتون دیتا بیس بود که سرعت میاد پایین تر تا به حالتی که بریزه تو سشن!

profnami
چهارشنبه 12 آبان 1389, 01:35 صبح
همون روش اول درست تر و کاملتره . در هنگام Login چک کنید و Update کنید . اولا که از این سیستم استفاده نکنید . دوما کدها رو در رویداد LoggedIn بنویسید !

baran_mehr
چهارشنبه 12 آبان 1389, 09:49 صبح
وااا:بامزه:
دوستان چرا میخواین لغمه رو دور سر خودتون بگردونید ، نیازی به دوتا فیلد نیست
همونطور که گفتم تاریخ رو ویرایش کن بعد از login حالا اگر میخوای تو یه label تاریخ login قبل رو نشون بدی دیگه به خودت بر میگرده بخوای چطوری از کدها استفاده کنی.
میتونی همونجور که یکی از دوستان گفتند قبل از ویرایش تاریخ جدید تاریخ قبلی رو داخل session یا هر چیز دیگه ای بریزی
نیازی به دوتا فیلد نیست

aserfg
چهارشنبه 12 آبان 1389, 09:51 صبح
دوست عزیز کلاس MembershipUser خودش دارای متد ی به نام LastLoginDate است . نیازی به زحمات شما نیست .:لبخند:

MembershipUser user = Membership.GetUser();

label1.text = user.LastLoginDate.ToString();

Mohandes2009
چهارشنبه 12 آبان 1389, 10:06 صبح
دوست عزیز کلاس MembershipUser خودش دارای متد ی به نام LastLoginDate است . نیازی به زحمات شما نیست .:لبخند:

MembershipUser user = Membership.GetUser();

label1.text = user.LastLoginDate.ToString();

این خوبه ولی اروره : Object reference not set to an instance of an object.

را میده!!:اشتباه:

Mohandes2009
چهارشنبه 12 آبان 1389, 10:08 صبح
همون روش اول درست تر و کاملتره . در هنگام Login چک کنید و Update کنید . اولا که از این سیستم استفاده نکنید . دوما کدها رو در رویداد LoggedIn بنویسید !
از چه سیستمی ؟ از سیستم لاگین خود ASP؟ چرا؟:متفکر:

baran_mehr
چهارشنبه 12 آبان 1389, 10:21 صبح
دوست عزیز کلاس MembershipUser خودش دارای متد ی به نام LastLoginDate است . نیازی به زحمات شما نیست .:لبخند:

یه شاعر گرانقدر میگه:لبخند:
هرگز حضور حاضر و غایب شنیده ای ... من در میان جمع و حواصم جای دیگر است


از چه سیستمی ؟ از سیستم لاگین خود ASP؟ چرا؟
بله منظورشون از همون سیستم لاگین بود
هر روشی معایب و مزایایی داره حالا من نمیدونم دوستمون برای چه معایبیش میگه استفاده نکن
اما درکل منم باهاش موافقم وقتی خودمون میتونیم این کار رو انجام بدیم و دستمون هم خیلی باز هست چه نیازی هست از اوگین استفاده کنیم(البته نظر شخصی بودا پس فردا تیتر نشه تو روزنامه ها:چشمک::لبخند:)

aserfg
چهارشنبه 12 آبان 1389, 10:28 صبح
عزیز جان این کد هیچ مشکلی نداره ببین چه اشتباهی انجام دادی . احتمالا بدون وجو دlablel1 تو صفحه ات همین جوری کپی کردی؟؟
از شعر این عزیز ارجمند هم چیزی سر در نیاوردم اگه منظورشون بنده هستم که حواسم جای دیگه ای است به بزرگی خودتون ببخشین !

من از لاگین خود ASp استفاده مینکنم .....در اینصورت چی؟

اما درکل منم باهاش موافقم وقتی خودمون میتونیم این کار رو انجام بدیم و دستمون هم خیلی باز هست چه نیازی هست از اوگین استفاده کنیم
دوست گرامی ، شما نمی تونید به اون سادگی که فکر میکنید متدهای ممبر شیپ رو پیاده کنید . یکی از فاکتورهای مهم بحث امنیت در این روش است بنده به بعضی از اونا اشاره می کنم:

General Security Practices for Login Controls:
Using Secure Sockets Layer (SSL) Protocol
uring View State
Securing Membership
Securing E-Mail

و......

baran_mehr
چهارشنبه 12 آبان 1389, 10:58 صبح
از شعر این عزیز ارجمند هم چیزی سر در نیاوردم اگه منظورشون بنده هستم که حواسم جای دیگه ای است به بزرگی خودتون ببخشین !
نه دوست عزیز منظور به خودمون بود که اینهمه داریم راه های متفاوت رو ارائه می دیم در صورتی که خود لوگین این کار رو میکنه:لبخند:


دوست گرامی ، شما نمی تونید به اون سادگی که فکر میکنید متدهای ممبر شیپ رو پیاده کنید . یکی از فاکتورهای مهم بحث امنیت در این روش است بنده به بعضی از اونا اشاره می کنم:

General Security Practices for Login Controls:
Using Secure Sockets Layer (SSL) Protocol
uring View State
Securing Membership
Securing E-Mail
خوب یکی از مزایای مهم این روش هم همین هست، اما من نمیتونم با خوشک بودنش کنار بیام اما باید اعتراف کرد از نظر امنیتی خوبه

اینم دو تا کد برای ایجاد یوزر و یا تغییر دسترسی کاربر:

Membership.CreateUser("baran", "1?2345a6", "baran@yahoo.com", "login name", "baran", True, System.Web.Security.MembershipCreateStatus.Invalid Answer)
System.Web.Security.Roles.AddUsersToRole("baran", "admin")

Mohandes2009
چهارشنبه 12 آبان 1389, 11:05 صبح
عزیز جان این کد هیچ مشکلی نداره ببین چه اشتباهی انجام دادی . احتمالا بدون وجو دlablel1 تو صفحه ات همین جوری کپی کردی؟؟ و......

جواب گرفتم البته گذاشتم داخل شرط
if (User.Identity.IsAuthenticated):لبخند:

ولی وقتی لاگین میکنم میزنه مثلا 2010/11/03 11:26:32 ق.ظ و خروج میکنم و 5 دقیقه بعد که میرم دوباره میزنه 2010/11/03 11:29:32 ق.ظ

یعنی منظورم اینه که تاریخ و ساعت آخرین لاگین را درست نمیزنه چرا؟

aserfg
چهارشنبه 12 آبان 1389, 11:12 صبح
Mohandes2009 (http://barnamenevis.org/forum/member.php?u=119784) این کلاس متدهای زیادی داره من تا حالا راست کارم نبوده مثل lastactivitydateو... ببین کدومش به دردت می خوره حتی اگه هیچ کدوم هم اونی که می خوای نبود می تونی جدول مربطه به این فیلدها رو پیدا کنی و اونا رو دستی همون جوری که می خوای update کنی . در هر صورت استفاده از ممبر شیپ بسیار سودمنده و بر خلاف اونچه که دوستان فکر می کنن بسیار انعطاف پذیره و قابلیت سفارشی سازی به صورت کامل داره .

Mohandes2009
چهارشنبه 12 آبان 1389, 11:20 صبح
از همه دوستان سپاس گذارم که اطلاعات خودشونا در اختیار من قرار دادند.