나는이 로그인 페이지를 만들었고 거의 완료되었지만 처음으로 로그인 암호를 변경하려고합니다. 웹 서비스에 메소드가 있는지 확인해야합니다. 첫 번째 로그인과 암호를 변경하고 내 데이터베이스에 저장하는 또 다른 방법은 사용자 입력란 2 개와 사용자 이름 1 개, 암호 1 개의 로그인 페이지가 있으며 로그인을 클릭하면됩니다. 처음 입력했는지 확인하고, 현재 입력 상자 2 개를 'Insert new pwd'와 'Repeat new pwd'로 바꾸고 싶습니다.하지만 그 일을 어떻게 할 지 모르겠군요. 보기,하지만 어디서나 찾을 수 없습니다. 이 내 볼 수 있습니다 :보기 내에서 MVC 실행
@model ProjectoEscolas.Models.UserGetInfo
@{
ViewBag.Title = "LoginEscolas";
}
<link href="@Url.Content("~/bower_components/font-awesome/css/font-awesome.min.css")" rel="stylesheet" type="text/css" />
<link href="http://maxcdn.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css" rel="stylesheet">
<link href="~/Content/login.css" rel="stylesheet" />
@using (Html.BeginForm("LoginEscolas", "Home", FormMethod.Post))
{
<body>
<img class="logotipos" src="../Images/logotipos.png"/>
<div class="login-form">
<!--<img class="loginimg" src="../Images/logotipos.png">-->
<h1>Área Privada</h1>
<p>Para entrar na Área Privada da DGEstE, deverá escrever o Utilizador e a Palavra-Chave das aplicações da <br /> DGEEC(Ex-GEPE)</p>
<br />
<div class="form-group ">
@Html.TextBoxFor(u => u.username, new { placeholder = "Utilizador", @class = "form-control" })
<i class="fa fa-user"></i>
</div>
<div class="form-group log-status">
@Html.PasswordFor(u => u.password, new { placeholder = "Palavra-Chave", @class = "form-control" })
<i class="fa fa-lock"></i>
</div>
<span class="alert">Invalid Credentials</span>
<input type="submit" value="Log In" class="log-btn">
@if (ViewBag.Error != null)
{
<h4 style="color:red">@ViewBag.Error</h4>
}
</div>
</body>
}
그리고 이것은 사용 컨트롤러 메신저의 일부입니다 : 당신의 LoginEscolas에서
[HttpPost]
public ActionResult LoginEscolas(UserGetInfo user)
{
Debug.WriteLine("Error");
if (user.username == null || user.password == null)
{
ViewBag.Error = "Insira os campos obrigatórios";
return View(user);
}
else
{
if (isValid(Convert.ToInt32(user.username), user.password))
{
FormsAuthentication.SetAuthCookie(user.username, false);
return RedirectToAction("Index", "Home");
}
}
return View(new UserGetInfo());
}
//public ActionResult LogOut()
//{
// FormsAuthentication.SignOut();
// return RedirectToAction("Login", "Home");
//}
private bool isValid(int username, string password)
{
bool isValid;
int id = Methods.LoginEscolas(username, password);
if (id != 0)
{
Methods.InsertLogs_Escolas(id);
Debug.WriteLine(id);
isValid = true;
}
else
{
isValid = false;
Debug.WriteLine(id);
ViewBag.Error = "Insira os seus dados correctamente";
}
return isValid;
}
public bool haschanged(int username,string password)
{
int id = Methods.LoginEscolas(username, password);
if (!Methods.hasChangedPwd_Escolas(id))
{
return false;
}else
{
return true;
}
}
public void changePwd(int username,string password,string newPwd)
{
int id = Methods.LoginEscolas(username, password);
Methods.changePwd_Escolas(id, newPwd);
}
이 2 개 별도의 방법과 (별도의 뷰 모델) 전망을해야한다 -'Register' 액션과 등록이되지 않습니다 @StephenMuecke'Login' 액션 –
, 이것은이 회사입니다 회사 사용자에게는 na ID와 비밀번호가 주어지며 처음 로그인 할 때 비밀번호를 변경해야합니다. 명확하지 않은 경우 죄송합니다. – Wood