请问下面的代码每次运行出来都是输出else后面的部分,前面的if部分为什么输不出来呀?求大神们指导,谢谢~~
<!-- 这是login_session.jsp文件 -->
<%@ page contentType="text/html;charset=GB2312"%>
<%@ page import="java.util.*"%>
<html>
<head>
</head>
<body color="#FFFFFF">
<%
String login_name=request.getParameter("login_name");
String userType=request.getParameter("userType");
if(login_name.equals("A") && userType.equals("普通用户")){
session.setAttribute("name",login_name);
session.setAttribute("type",userType);
%>
<jsp:forward page="vip.jsp"/>
<%
}
else if(login_name.equals("B") && userType.equals("VIP用户")){
session.setAttribute("name",login_name);
session.setAttribute("type",userType);
%>
<jsp:forward page="common.jsp"/>
<%
}
else
{
%>
<h3><font color="red">您未输入姓名,请输入你的姓名!<br><br>(5秒钟后将自动跳转到登录界面)</font></h3>
<meta http-equiv="Refresh" content="5;url=login_session.html">
<% } %>
</body>
</html>
------解决思路----------------------
请求数据没有传过来,把请求页面的代码贴出来。
请求URL应该是像这样的:
http://127.0.0.1:8080/WebProject/login_session.jsp?login_name=A&userType=VIPUser
你的userType 都有中文呢?有可能是中文乱码了,所以equals起来当然就false了呀。你可以把值打印出来:
<%
}
else
{
%>
login_name:<%=login_name%>
userType:<%=userType%>
<br>
<br>
<br>
<h3><font color="red">您未输入姓名,请输入你的姓名!<br><br>(5秒钟后将自动跳转到登录界面)</font></h3>
<meta http-equiv="Refresh" content="5;url=login_session.html">
<% } %>
</body>