ورود

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

موفق باشید.