PDA

View Full Version : سوال: پاک کردن اطلاعات کاربران دیگر برای یک کاربر در دیتابیس



ABZiko
جمعه 21 شهریور 1393, 13:36 عصر
سلام، بنده یک سول داتم می خواستم بدونم راه حلی هست که اگر کاربری روی دکمه خروج حساب خودش کلیک کرد، اطلاعات دیتابیس فقط برای همون کاربر پاک بشه؟ و اگر دوباره لاگین کرد از همون زمانی که وارد شد، اطلاعات ثبت شده در دیتابیس براش نمایش داده بشن؟ (در واقع مثل چت روم)

mohammad reza beizavi
جمعه 21 شهریور 1393, 13:49 عصر
درود بر شما
برای اینکار مسلما با هر بار ورود کاربر ساعت و تاریخ ورود داخل دیتابیس ثبت میشه و یک مشخصه منحصر به فرد کاربر، مثل Id رو درون یک متغیر مثلا یک session می ریزید.
حالا وقتی که کاربر خروج کرد از دیتابیس و جدول مورد نظرتون تنها کاربری رو پاک کنید که userId اون برابر با مقدار ثبت شده درون session باشه.
اگر فرض کنیم که با هر بار ورود شما userId اون کاربر رو مثل این کد نگه میدارید:
Session["UserId"] = Id;

بعد موقع خروج همین Session رو به کوئری Delete بفرستید.

ABZiko
جمعه 21 شهریور 1393, 14:07 عصر
ممنون، یک سوال دیگه هم داشتم، برای اینکه بخوایم از Session استفاده کنیم ، از همون اول باید اطلاعات رو با Session ذخیره کنیم یا می شه با POST و ... ثبت کنیم و موقع خوندن اطلاعات کاربر ، اون مقدار $_POST مشخصه کاربر رو برابر $_Session قرار بدیم؟

mohammad reza beizavi
جمعه 21 شهریور 1393, 14:25 عصر
بهترین کار ذخیره کردن اطلاعات درون session به محض دریافتشه
البته فقط مکررا و برای مقادیر چر حجم بهتره از session استفاده نکنید، چون همونطور که می دونید این مقادیر روی سرور ذخیره میشند و ممکنه در بلند مدت سرعت و کارایی سایت رو پایین بیارند.