View Full Version : چرا پسورد قدیمی رو توی سشن گذاشته؟
bbc_sh
چهارشنبه 30 مرداد 1387, 11:13 صبح
برای تغییر پسورد چرا تو این کد پسورد قدیمی رو توی سشن گذاشته؟
if (Session["pwd"].ToString() == Txtoldpass.Text)
{
sql_comm.Parameters.AddWithValue("@user", Session["usr"].ToString());
sql_comm.Parameters.AddWithValue("@npass", Txtnewpass.Text);
try
merlin_vista
چهارشنبه 30 مرداد 1387, 12:52 عصر
معمولاً براي اينكه در هنگام تغيير پسورد چك كنند ببينند كه آيا پسورد قبلي را درست ميزنه .
اين كار براي اينه كه اگه جايي اكانت شما باز بود طرف نتونه پسور را عوض كنه .
bbc_sh
چهارشنبه 30 مرداد 1387, 15:20 عصر
یعنی وقتی کاربر وارد محیط کاربری خودش میشه . و یوزر و پسوورد رو وارد میکنه ,علاوه بر این که نام کاربری توی sesseion["user"] نگداری میشه , باید همون موقع پسورد رو هم توی session["pass"] نگهداری کرده باشیم که بتونیم اینجا ازش استفاده کنیم؟
Behrouz_Rad
چهارشنبه 30 مرداد 1387, 17:35 عصر
هر کی اون کد رو نوشته اشتباه کرده.
اصلا نیازی به Session وجود نداره. صحت Pass قدیمی رو بلافاصله قبل از UPDATE کلمه ی عبور در دیتابیس، با یک دستور IF در SP بررسی کنید.
شبه کد:
IF (old pass is correct)
UPDATE record
موفق باشید.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.