求一ASP中验证问题

来源:百度知道 编辑:UC知道 时间:2024/05/14 19:27:21
<title>注册验证</title>
<%
snum=trim(request.form("snum"))
sname=trim(request.form("sname"))
ssex=request.form("ssex")
sbirth=trim(request.form("sbirth"))
sdate=trim(request.form("sdate"))
sclass=trim(request.form("sclass"))
sadd=trim(request.form("sadd"))
stel=trim(request.form("stel"))
sother=trim(request.form("sother"))
'验证学号重复
set rs=server.createobject("adodb.recordset")
check="select * from stu where usernum='"&snum&"'"
rs.open check,conn,1,1
if not rs.eof then
response.write("<script>alert('已经有人用此学号!')</script>")
response.write("<script>location.href='reg.html'</script>")
end if
'验证学号必须为数字

求这中间的代码,要求能够验证必须为数字(不知道可行否),哪为朋友帮下忙!

'检验为空
empty1=""<

check="select * from stu where usernum='"&snum&"'"
如果你的usernum为数字字段,查询条件不需要单引号
check="select * from stu where usernum="&snum
'验证学号必须为数字
可以直接在客户端验证减轻服务器端负担,
你的客户端应该有检查输入是否为空的js在其中添加:
if(document.getElementsByName("snum")[0].match(/^\d*$/g))
{ alert("输入的学号必须为数字")
}
如果在服务端验证:
if regTest(snum) then
response.write "学号匹配正确,继续"
else
response.write "学号匹配不正确,返回"
end if
function regTest(str)
Set regEx = New RegExp ' 建立正则表达式。
regEx.Pattern = "^\d*$" ' 设置模式。
regEx.Global = True ' 设置全局可用性。
regTest = regEx.test(str)
end function

可以在客户端用javascript验正
<script language="javascript">
function checkSnum(){
var flag = true;
var aa = document.getElementsByName("snum")[0];
var snum = aa.value;
var str="0123456789"