0

ユーザー ID と最小パスワード長の検証が JavaScript によって行われるログイン ページを開発しました。DB に接続してユーザーを認証するサーブレットがあります。認証が失敗したときに同じログイン ページにメッセージを表示する方法を教えてください。

4

5 に答える 5

2

HTML (エラー メッセージが表示されるページの HTML にこれを配置します):

<span id="login_failed"></span>

JavaScript:

<script type="text/javascript">
var login_success = false;  /* set this to true if the login was a success */

if(login_success == false)
{
    document.getElementById("login_failed").innerHTML = "Login Failed.";
}
else
{
     window.location = "http://www.yourpage.com/login_success.html";
}
</script>
于 2012-07-06T04:41:30.067 に答える
2

このように、サーブレットから login failed のフラグ値を送信します。

request.setAttribute("loginResult", true);

この値を JSP で取得します。デフォルト値は false です。true の場合、エラー メッセージを表示します。

<%
    if(request.getAttribute("loginResult") != null && request.getAttribute("loginResult") == "true"){
%>
 <p style="color:red"> Login Failed. Please try again. </p>
<%
}
%>

Javascript の場合 <p style="color:red"> Login Failed. Please try again. </p>、上記のコードからではなく、関数を呼び出してエラーを表示します。

于 2012-07-06T05:47:24.133 に答える
1

あなたのweb.xmlにこれを入れてください

<login-config>
  <auth-method>FORM</auth-method>
  <form-login-config>
    <form-login-page>/login.jsp</form-login-page>
    <form-error-page>/login.jsp?loginerror=100</form-error-page>
  </form-login-config>
</login-config>

login.jsp にこの JavaScript を配置して、loginerror パラメータを読み取り、ondocument.ready (onload()) と呼びます。

function gup()
{
  var name = 'loginerror';
  var regexS = "[\\?&]"+name+"=([^&#]*)";
  var regex = new RegExp( regexS );
  var results = regex.exec( window.location.href );
  if( results == null )
    //here you don't have login errors
  else
    //here you have login error
}

楽しい

于 2012-07-06T05:59:53.987 に答える
0

サーブレットで JavaScript を出力します。

  • 警告メッセージ:

    System.out.println("<script>alert('Login fail.')</script>");
    
  • ログインページに再度リダイレクトします。

    System.out.println("<script>window.location='loginUrl'</script>");
    
于 2012-07-06T04:43:31.717 に答える
0
if(/*something fails*/){
    alert("Login fails!");
}
于 2012-07-06T04:34:54.950 に答える