<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>用户注册</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>
<title>用户注册</title>
<script type="text/javascript">
function todo(){
var name=document.forms[0].name.value;
var psd=document.forms[0].psd.value;
var conpsd=document.forms[0].conpsd.value;
if(name==""&&name==null){
document.getElementById('sName').innerHTML = " 用户名不能为空";
/*alert("用户名不能为空!");*/
return false;
}
if(psd==""&&psd==null){
document.getElementById('sPwd').innerHTML = " 密码不能为空";
/*alert("密码不能为空!");*/
return false;
}
if(conpsd!=psd){
document.getElementById('sConpsd').innerHTML = " 前后密码不一致!";
}
}
</script>
</head> </head>
<body>
<table rules="none" frame="void">
<form action="register/doregister.jsp" id="form1" name="form1" method="post" onSubmit="return todo()">
<tr>
<td align=right>用户名:</td><td><input id="name" name="name" type="text"/>
<span id="sName" style="color:red"></span></td>
</tr>
<tr>
<td align=right>密码:</td><td><input id="psd" name="psd" type="password"/>
<span id="sPsd" style="color:red"></span></td>
</tr>
<tr><td align=right>确认密码:</td><td><input id="conpsd" name="conpsd" type="password"/>
<span id="sConpsd" style="color:red"></span></td>
</tr>
<tr>
<td align=right>性别:</td><td><input id="sex1" name="sex" type="radio" value="男" checked="checked"/> 男 <input id="sex2" name="sex" type="radio" value="女"/> 女 </td>
</tr>
<tr>
<td align=right><input id="submit" name="submit" value="提交" type="submit"/></td>
<td> <input id="reset" name="reset" value="重置" type="reset"/></tr>
</form>
</table>
</body></html>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@page import="com.bbs.dao.inter.BaseDao"%>
<%@page import="com.bbs.dao.inter.UserDao"%>
<%@page import="com.bbs.dao.impl.UserDaoImpl"%>
<%@page import="com.bbs.entity.User"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'doregister.jsp' starting page</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>
<%
request.setCharacterEncoding("utf-8");
String username = request.getParameter("name").trim();
String password = request.getParameter("psd");
String sex = request.getParameter("sex"); BaseDao bd = new BaseDao();
bd.getCon(); UserDao ud = new UserDaoImpl();
User user = ud.findUser(username);//判定用户是否存在。 User user1 = new User();
user1.setuName(username);
user1.setuPwd(password);
user1.setuSex(sex);
user1.setAuthority(2);
int result = ud.addUser(user1);
if (user != null) {
out.println("该用户已经存在!请重新注册!");
response.setHeader("refresh", "2;URL=../register/register.jsp");
} else if (result == 0) {
out.println("注册失败,重新注册!");
out.println(" (2秒后自动跳转) ");
response.setHeader("refresh", "2;URL=../register/register.jsp");
} else {
out.println("注册成功!!!!可登录界面!");
out.println(" (2秒后自动跳转) ");
%>
<a href="../login/login.jsp">登录</a>
<%
response.setHeader("refresh","2;URL=../login/login.jsp");
}
%>
</body>
</html>
想问的是。我用户名和密码也为空的时候。数据库表也会多出一行。这个要在哪里加以阻止啊??
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>用户注册</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>
<title>用户注册</title>
<script type="text/javascript">
function todo(){
var name=document.forms[0].name.value;
var psd=document.forms[0].psd.value;
var conpsd=document.forms[0].conpsd.value;
if(name==""&&name==null){
document.getElementById('sName').innerHTML = " 用户名不能为空";
/*alert("用户名不能为空!");*/
return false;
}
if(psd==""&&psd==null){
document.getElementById('sPwd').innerHTML = " 密码不能为空";
/*alert("密码不能为空!");*/
return false;
}
if(conpsd!=psd){
document.getElementById('sConpsd').innerHTML = " 前后密码不一致!";
}
}
</script>
</head> </head>
<body>
<table rules="none" frame="void">
<form action="register/doregister.jsp" id="form1" name="form1" method="post" onSubmit="return todo()">
<tr>
<td align=right>用户名:</td><td><input id="name" name="name" type="text"/>
<span id="sName" style="color:red"></span></td>
</tr>
<tr>
<td align=right>密码:</td><td><input id="psd" name="psd" type="password"/>
<span id="sPsd" style="color:red"></span></td>
</tr>
<tr><td align=right>确认密码:</td><td><input id="conpsd" name="conpsd" type="password"/>
<span id="sConpsd" style="color:red"></span></td>
</tr>
<tr>
<td align=right>性别:</td><td><input id="sex1" name="sex" type="radio" value="男" checked="checked"/> 男 <input id="sex2" name="sex" type="radio" value="女"/> 女 </td>
</tr>
<tr>
<td align=right><input id="submit" name="submit" value="提交" type="submit"/></td>
<td> <input id="reset" name="reset" value="重置" type="reset"/></tr>
</form>
</table>
</body></html>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@page import="com.bbs.dao.inter.BaseDao"%>
<%@page import="com.bbs.dao.inter.UserDao"%>
<%@page import="com.bbs.dao.impl.UserDaoImpl"%>
<%@page import="com.bbs.entity.User"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
+ request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">
<title>My JSP 'doregister.jsp' starting page</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>
<%
request.setCharacterEncoding("utf-8");
String username = request.getParameter("name").trim();
String password = request.getParameter("psd");
String sex = request.getParameter("sex"); BaseDao bd = new BaseDao();
bd.getCon(); UserDao ud = new UserDaoImpl();
User user = ud.findUser(username);//判定用户是否存在。 User user1 = new User();
user1.setuName(username);
user1.setuPwd(password);
user1.setuSex(sex);
user1.setAuthority(2);
int result = ud.addUser(user1);
if (user != null) {
out.println("该用户已经存在!请重新注册!");
response.setHeader("refresh", "2;URL=../register/register.jsp");
} else if (result == 0) {
out.println("注册失败,重新注册!");
out.println(" (2秒后自动跳转) ");
response.setHeader("refresh", "2;URL=../register/register.jsp");
} else {
out.println("注册成功!!!!可登录界面!");
out.println(" (2秒后自动跳转) ");
%>
<a href="../login/login.jsp">登录</a>
<%
response.setHeader("refresh","2;URL=../login/login.jsp");
}
%>
</body>
</html>
想问的是。我用户名和密码也为空的时候。数据库表也会多出一行。这个要在哪里加以阻止啊??
解决方案 »
- 一道编程实现求解(急)
- 谁有一个入门struts2 ’ 验证框架’的例子
- 请有J2EE工作经验的前辈指教
- 在struts里面找tld文件
- 高人指点如何在Struts中备份mysql数据库
- Java Web 企业开发
- 菲利克斯
- 程序需要import两个包:org.apache.jasper.*和org.apache.jsp.*,请问到哪下载?
- 很简单的问题,解决立马给分
- import Time; 语句出错!说缺少.,这问题已经耽误我快一周时间了,没法再顺利继续学下去,请帮忙!
- myBatis3异常提示For input string: "{0=null}"
- PortableRemoteObject.narrow问题求大神帮忙!
String password = request.getParameter("psd");
String sex = request.getParameter("sex");在这里验证是否为空或者为null;你不应该把验证只放在前台,因为稍微懂点js的人就可以跳过js的验证!onsubmit失效的问题,我也经常遇到,所以以后干脆不用了
之后当验证通过之后,在获取form.submit();吧。LZ你上面的代码,如果onsubmit()失效之后,后端的代码会自动加入一个空的User对象。
String username = request.getParameter("name").trim();
String password = request.getParameter("psd");
String sex = request.getParameter("sex");
这里获取之后,也加个用户名的空校验吧。