问题描述
<%@pageimport="java.sql.*"%><%!publicstaticfinalStringDBDRIVER="com.microsoft.sqlserver.jdbc.SQLServerDriver";publicstaticfinalStringDBURL="jdbc:sqlserver://localhost:1434;DatabaseName=student";publicstaticfinalStringDBUSER="sa";publicstaticfinalStringDBPASS="12345";%><%Connectionconn=null;PreparedStatementpstmt=null;ResultSetrs=null;booleanflag=false;%><%Stringsuserid=request.getParameter("userid");Stringspassword=request.getParameter("password");try{Class.forName(DBDRIVER);conn=DriverManager.getConnection(DBURL,DBUSER,DBPASS);Stringsql="SELECTidFROMuserWHEREuserid='"+suserid+"'ANDpassword='"+spassword+"'";pstmt=conn.prepareStatement(sql);rs=pstmt.executeQuery();if(rs.next()){flag=true;}}catch(Exceptione){}finally{try{conn.close();}catch(Exceptione){}}%><%if(flag==true){%><jsp:forwardpage="index.jsp"/><%}else{%><jsp:forwardpage="failure.jsp"/><%}%>
不管输入什么都会进入failure.jsp包括正确的用户名求帮助QAQ
解决方案
解决方案二:
publicstaticfinalStringDBURL="jdbc:sqlserver://localhost:1434;DatabaseName=student";貌似sqlserver的端口号是1433吧,楼主你确定你没有修改端口吗?
解决方案三:
默认端口名是1433,你看看是不是端口的原因,如果不是的话,还有一个很重要的原因,就是如果你的用户名和密码以及你的jsp代码都是在同一个页面上完成的,所以你的跳转可能有点问题,其次,查看你能否获取到参数,如果不能获取到就是参数问题了
解决方案四:
debugdebug啊