2014-10-02 2 views
-2

안녕하세요, 내 JSP에서 세션 값을 가져올 수 있습니다. 이제 텍스트 상자와 일치하는지 여부를 세션 값과 비교하려고합니다. 일치하는 경우 사용자를 다른 페이지로 리디렉션합니다. 그렇지 않으면 같은 페이지로 유지됩니다. 어떻게 진행해야할지 모르겠습니다. 제발 도와주세요. 감사합니다.텍스트 상자 값과 일치하는지 세션 값 비교

JSP

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="ISO-8859-1"> 
<title>Factorial</title> 
</head> 
<body> 
<form action="fact" method="POST"> 
Enter a number: <input type="text" name="num"> 
<input type="submit"/> 
<%= session.getAttribute("money") %>, 
</form> 
</body> 
</html> 

서블릿

protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
    // TODO Auto-generated method stub 

    HttpSession session = request.getSession(); 

     String text = request.getParameter("money"); 

     int money = (Integer)session.getAttribute("money"); 

     String testing = String.valueOf(money); 

    if(text == testing) 
    { 

    RequestDispatcher rd = request.getRequestDispatcher("MainPage"); 
    rd.forward(request, response); 
} 
else 
{ 
    response.redirect("Errorpage.jsp"); 
} 
+0

코드 예제를 제공하고 지금까지 시도한 것을 설명하십시오. deyur

+0

<메타 문자 집합 = "ISO-8859-1"> 계승 <양식 액션 = "사실"방법 = "POST"> 이 번호를 입력 : <% = session.getAttribute ("NUM") %>의 – Programm3r

+0

중복 가능성 [방법 Java에서 문자열을 비교합니까?] (http : // stacko verflow.com/questions/513832/how-do-i-compare-strings-in-java) –

답변

0

당신이

<body> 
    <form action="fact" method="POST"> 
    Enter a number: <input type="text" name="num"> 
    <input type="submit"/> 
    </form> 
    </body> 




    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 



      HttpSession session = request.getSession(); 

       String text = request.getParameter("num"); 

       int money = (Integer)session.getAttribute("money"); 

       String testing = String.valueOf(money); 

      if(testing.equalsIgnoreCase(text)) 
      { 

      RequestDispatcher rd = request.getRequestDispatcher("MainPage"); 
      rd.forward(request, response); 
     } 
     else 
     { 
      response.sendRedirect("Errorpage.jsp"); 
     } 
     } 

JSP

에서 액세스 할 필요가 없습니다 것입니다, 당신은 이미 "돈"이라는 세션 속성을 가지고 있다고 가정 "money"라는 Session 속성을 아직 만들지 않았고 jsp로 만들려면 S를 사용해야합니다. criptlet.

 <body> 
     <form action="abc.do" method="POST"> 
     Enter a number: <input type="text" name="num"> 
     <input type="submit"/> 
     <% session.setAttribute("money",1000); %>, 
     </form> 
     </body> 
+0

if 문에서 URL로 리디렉션되지 않습니다. MainPage는 서블릿 또는 .jsp 파일입니다. – Programm3r