出银蛇:怎么才能判断用户输入的数据是介于10000到1000000000之间的数值呢?

来源:百度文库 编辑:高考问答 时间:2024/05/04 22:49:22
我现在在学习ASP,遇到了一个关于判断输入的QQ号码是不是正确的QQ号的问题,我该怎么判断呢?应该怎么写代码呢?
下面是我写的代码,我不知道错在什么地方,请大家帮我看一下,谢谢!
<%
If IsNumeric(Request("Stu_QQ"))=False Then
Err_Title="错误信息"
Err_Msg="<font color=red>请输入正确的QQ号码!</font>  <a href=""javascript:history.go(-1);"">请点击这里返回,重新输入</a>"
ElseIf Clng(Request("Stu_QQ"))<10000 OR Clng(Request("Stu_QQ"))>1000000000 Then
Err_Title="错误信息"
Err_Msg="<font color=red>请输入正确的QQ号码!</font>  <a href=""javascript:history.go(-1);"">请点击这里返回,重新输入</a>"
End If
%>

<%
Dim QQ
QQ = Trim(Request("Stu_QQ"))
If QQ = "" Or IsNumeric(QQ)=False Then
Err_Title="错误信息"
Err_Msg="<font color=red>请输入正确的QQ号码!</font> <a href=""javascript:history.go(-1);"">请点击这里返回,重新输入</a>"
Else
QQ = CLng(QQ)
If QQ <10000 OR QQ >1000000000 Then
Err_Title="错误信息"
Err_Msg="<font color=red>请输入正确的QQ号码!</font> <a href=""javascript:history.go(-1);"">请点击这里返回,重新输入</a>"
End If
End If
%>

可以使用这种方法,
Dim regEx
Set regEx = New RegExp
regEx.Pattern = "^[1-9]{1,1}[0-9]{4,9}$"
If Not IsNull(Request("Stu_QQ")) Then
If regEx.Test(Request("Stu_QQ")) Then
'哟唏!大大的正确!米系米系的干活!!
End If
End If
通常正侧表达式都是用在用户输入数据格式验证上,切在客户端就能先判断,减少服务器运算量。

用select语句吧
sqlstr = select qq from 表名 where qq between 10000 and 1000000000
判断sqlstr真假就行了