Struts 做的 登陆和注册页面
注册 ,不能判断用户名是否成在
登陆,不管 输入什么密码和名字,都可以登陆?
详细问题加QQ 我不在乎送多少分 关键是谁能帮我解决问题!!!代码太长了就不贴了!
注册 ,不能判断用户名是否成在
登陆,不管 输入什么密码和名字,都可以登陆?
详细问题加QQ 我不在乎送多少分 关键是谁能帮我解决问题!!!代码太长了就不贴了!
解决方案 »
- DWR 指定用户聊天
- tomcat运行问题
- 有没有权威人士指点一下WEB聊天室的在线名单用list存还是数据库存?
- webservice 异常问题,请知道的帮帮我,谢谢
- tomcat 下 request 的问题,为什么多次请求得到 request.toString() 的一样呢?
- Context的lookup()函数的实现
- JSP防注问题,模仿asp程序时,有几个问题,求各位帮助,谢!
- 客户端调用EJB的代码, 编译正确, 但运行时显示没有正确的JNDI实现, 该怎么作?可以下载一个JNDI实现的包么?
- 执行ftp传文件问题,请教.
- 各位指点一下
- 在线等。。。急!急!急!
- 求教大虾: JSP + MySQL + Tomcat问题!
public void denglu(DengForm f ) {
Connection conn = null;
PreparedStatement stmt = null;
ResultSet rs = null;
String sql = "select * from login3 where user=? and passwd1=?";
try {
conn = ds.getConnection();
stmt =conn.prepareStatement(sql);
rs=stmt.executeQuery();
stmt.setString(2, f.getName());
stmt.setString(3,f.getPasswd1());
rs.next();
if(rs.next()){
rs.getString(2);
}
} catch (Exception err) {
err.printStackTrace(); } finally {
if (rs != null)
try {
rs.close();
} catch (Exception ee) {
}
if (stmt != null)
try {
stmt.close();
} catch (Exception ee) {
}
if (conn != null)
try {
conn.close();
} catch (Exception ee) {
}
}
}
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
DengForm dengForm = (DengForm) form;// TODO Auto-generated method stub
zhuce1 zhu1 = new zhuce1();
zhuce z = new zhuce(getDataSource(request, "database"));
String sl1 = null;
if(form instanceof DengForm){
z.denglu(dengForm);}
if(zhu1.getName()==dengForm.getName()){
return mapping.findForward("chenggong");
}else{
return mapping.findForward("shibai");
}
} } FormBean
ublic class DengForm extends ActionForm {
/*
* Generated fields
*/ /** passwd1 property */
private String passwd1="passwd1"; /** name property */
private String name="name"; /*
* Generated Methods
*/ /**
* Method validate
* @param mapping
* @param request
* @return ActionErrors
*/
public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
// TODO Auto-generated method stub
return null;
} /**
* Method reset
* @param mapping
* @param request
*/
public void reset(ActionMapping mapping, HttpServletRequest request) {
// TODO Auto-generated method stub
} /**
* Returns the passwd1.
* @return String
*/
public String getPasswd1() {
return passwd1;
} /**
* Set the passwd1.
* @param passwd1 The passwd1 to set
*/
public void setPasswd1(String passwd1) {
this.passwd1 = passwd1;
} /**
* Returns the name.
* @return String
*/
public String getName() {
return name;
} /**
* Set the name.
* @param name The name to set
*/
public void setName(String name) {
this.name = name;
}
}
帮我 看看哪里有问题
<%@ page contentType="text/html;charset=gb2312" %><%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-tiles" prefix="tiles" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-template" prefix="template" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-nested" prefix="nested" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html:html locale="true"> <head>
<html:base />
<title>denglu.jsp</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<html:form action="/deng" method="post" >
<center><font color=red>${}</font></center>
<hr>
<table border="0">
姓名:<input type="" name="name">
密码:<input type="" name="passwd1">
<td colspan="2" align="center"><html:submit /></td>
</tr>
</table>
</html:form>
</body>
</html:html>
你的CONFIG.XML文件呢?
报的错也贴下
1. the user exsits or not (rs.next())
2. the user's id/name and password match or not (form.password.equals(rs.getString(..)))Besides, there are still so many mistakes in your codes, especially in JDBC.regards
rs.getString()
} form.password.equals(rs.getString(..))
DAO里你在仔细看看 整理清楚
这个你懂以后你会上一个新台阶的
祝福你 1取值问题
2你那成功和失败页面不知道你写了没
stmt.setString(3,f.getPasswd1());
rs.next();
if(rs.next()){
rs.getString(2);
} 应该使这里错误 下面还没看呢
if(rs.next()){
rs.getString(2);
}这个有问题吧
if(rs.next()){
rs.getString(2);
}
stmt.setString(2, f.getName());
stmt.setString(3,f.getPasswd1());为什么是从2开始的呢?这个地方好像是有问题。。可以把这个位置换成
stmt.setString(1, f.getName());
stmt.setString(2,f.getPasswd1());
rs=stmt.executeQuery();
试一下。希望能够帮助你
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd"><struts-config>
<data-sources >
<data-source key="database">
<set-property property="password" value="" />
<set-property property="minCount" value="1" />
<set-property property="maxCount" value="20" />
<set-property property="user" value="root" />
<set-property property="driverClass" value="com.mysql.jdbc.Driver" />
<set-property property="description" value="" />
<set-property property="url" value="jdbc:mysql://localhost:3306/user_login" />
<set-property property="readOnly" value="false" />
<set-property property="autoCommit" value="true" />
<set-property property="loginTimeout" value="10000" />
</data-source> </data-sources>
<form-beans >
<form-bean name="yanzhengForm" type="com.yourcompany.struts.form.YanzhengForm" />
<form-bean name="dengluForm" type="com.yourcompany.struts.form.dengluForm" />
<form-bean name="dengForm" type="com.yourcompany.struts.form.DengForm" />
<form-bean name="deleteForm" type="com.yourcompany.struts.form.DeleteForm" />
</form-beans> <global-exceptions />
<global-forwards />
<action-mappings >
<action
attribute="yanzhengForm"
input="/zhuce.jsp"
name="yanzhengForm"
path="/yanzheng"
scope="request"
type="com.yourcompany.struts.action.YanzhengAction">
<forward name="chenggong" path="/chenggong.jsp" />
<forward name="shibai" path="/shibai.jsp" />
</action>
<action
attribute="dengForm"
input="/denglu.jsp"
name="dengForm"
path="/deng"
scope="request"
type="com.yourcompany.struts.action.DengAction">
<forward name="chenggong" path="/chenggong.jsp" />
<forward name="shibai" path="/shibai.jsp" />
</action>
<action
attribute="deleteForm"
input="/delete.jsp"
name="deleteForm"
path="/delete"
scope="request"
type="com.yourcompany.struts.action.DeleteAction"
validate="false">
<forward name="chenggong" path="/chenggong.jsp" />
<forward name="shibai" path="/shibai.jsp" />
</action>
</action-mappings> <message-resources parameter="com.yourcompany.struts.ApplicationResources" />
</struts-config>
姓名:<input type="" name="name">
密码:<input type="" name="passwd1">不用input,用<html:text property="name" />和<html:password property="passwd1" />
另外,你的formBean要有name和passwd1这2个属性,还要有setter和getter方法。
在struts-config里面对formbean和action的设置也要注意。
if(zhu1.getName()==dengForm.getName()){看见没有,你比较两个字符串,不能用==去比较,必须用equals去比较,就没有问题了。
必须用equals去比较。==比较出的结果总是false。
stmt.setString(2, f.getName());
stmt.setString(3,f.getPasswd1());
完了在
rs = stmt.executeQuery();
还有就是字符串比较 应该用equals
==比的是引用 而equals 比的是字符串的内容