0
私は、パスワードを変更する機能があるイントラネットのWebサイトを作っています。asp mvcのユーザーのパスワードを変更
ユーザーが古いパスワードと新しいパスワードを入力すると、古いパスワードが現在のパスワードでチェックされ、一致する場合はデータベースの新しいパスワードが更新されます。
データベースを見ると、[パスワード]列の値は変更されますが、新しいパスワードでログインしようとすると、それは起こりませんが古いパスワードでログインします。
今すぐアプリケーションを停止し、再度ビルド/実行すると、更新されたパスワードが使用されます。
なぜこのようなことが起こっていますか?
public JsonResult ChangePwd(string OldPwd, string NewPwd)
{
string username = User.Identity.Name.ToUpper();
USER_DET temp = objUser.getUserByName(username);
if (temp.Password.ToString() == OldPwd.ToUpper())
{
temp.Password = NewPwd.ToUpper();
objUser.Update(temp);
var data2 = new[] {
new { Text="True", Value="1" }//Password Changed
};
return Json(data2, JsonRequestBehavior.AllowGet);
}
else
{
var data2 = new[] {
new { Text="False", Value="1" }//Password didnt match... no changes
};
return Json(data2, JsonRequestBehavior.AllowGet);
}
}
いくつかのコードを含む詳細情報を投稿すると便利です。 – 0xDECAFBAD
*新しいパスワードでログインしようとすると、それは起こらないが、古いパスワードでログインする*あなたのログイン方法をデバッグしてください。 –
@Div .....ありがとうございました。あなたは、Loginメソッドにいくつかの問題があったと思います。 – Sudhanshu