2013-05-13 3 views
4

나는 JSP에서 새로운 편이다. 그리고 이것이 이것이 기본적인 질문이라는 것을 압니다. 그러나 나는 그것을 할 수 없었다. 내가 원하는 것은이 JSP 페이지에서 링크를 만드는 것입니다. 그러나 다른 페이지는 로그인에 따라 다릅니다. 올 Y 른 경우 correct.jsp에 대한 링크가 표시되어야하며, 로그인이 올 Y 르지 않으면 login.jsp에 대한 링크가 표시되어야합니다. 나는이 작업을 수행 할 때JSP - JSP 페이지에서 다른 JSP 페이지로 연결되는 링크를 만드는 방법

<% 
    String str = ""; 
    String userid = request.getParameter("usr"); 
    session.putValue("userid", userid); 
    String pwd = request.getParameter("pwd"); 
    Class.forName("com.mysql.jdbc.Driver"); 
    java.sql.Connection con = DriverManager.getConnection(
      "jdbc:mysql://localhost:3306/pr", "root", "xxx"); 
    Statement st = con.createStatement(); 
    ResultSet rs = st 
      .executeQuery("select * from a where name='"+ userid + "'"); 
    if (rs.next()) { 
     if (rs.getString(2).equals(pwd)) { 
      out.println("welcome " + userid); 
      str = "correct.jsp"; 
     } else { 
      out.println("Invalid password try again"); 
      str = "login.jsp"; 
     } 
    } 
%> 

<a href=str> <% str; &> </a> 

그러나, 오류 <% str을 위해 "표현을 완료하기 위해"AssignmentOperator 표현을 "삽입"; &>이 제공됩니다.

감사합니다.

답변

2
<% 
String str = ""; 
String userid = request.getParameter("usr"); 
session.putValue("userid", userid); 
String pwd = request.getParameter("pwd"); 
Class.forName("com.mysql.jdbc.Driver"); 
java.sql.Connection con = DriverManager.getConnection(
     "jdbc:mysql://localhost:3306/pr", "root", "xxx"); 
Statement st = con.createStatement(); 
ResultSet rs = st 
     .executeQuery("select * from a where name='"+ userid + "'"); 
if (rs.next()) { 
    if (rs.getString(2).equals(pwd)) { 
     out.println("welcome " + userid); 
     // str = "correct.jsp"; 
    %> 
     <jsp:forward page="correct.jsp"></jsp:forward> 
    <% 
    } else { 
     out.println("Invalid password try again"); 
     // str = "login.jsp"; 
    %> 

     <jsp:forward page="login.jsp"></jsp:forward> 
    <% 
    } 
} 
%> 

이 JSP를 사용하여 표준 방법을 것으로 보인다해야한다.

+0

"구문 오류, 삽입"; "완료 문"및 "구문 오류,"AssignmentOperator 식 삽입 "할당을 완료하려면 첫 번째"앞으로 "오류가 발생합니다. 그리고 다른 사람도 있습니다 –

+0

위의 코드는 .jsp 파일에 있습니까 ?? –

+0

지금 확인해 보겠습니다. 코드를 수정했습니다. 실수로 jsp 태그가 JSP 코드에서 Java 코드로 작성되지 않았습니다. 원인은 HTML 태그입니다! –

0

<a href="<%=str%>"> the_link </a> 
+0

위대한 thx :) 실제로 내가 정확히 원하는 것은 <%=str%>

0

당신은 당신이 말한대로 <a href="<%=str%>"><%=str%></a> 내가 그것을 편집 한 사용할 수 있습니다.

+0

예하지만 페이지의 이름은 str에 따라 다르므로 변경됩니다. 정적으로 만들 수는 없습니다. –

0

문자열 str을 출력하려면 다음 표현식 < % = str %>을 사용하십시오. 앞으로 태그 : 따라서 <a href="<%=str%>">my link </a>

관련 문제