生成唯一的随机数ASP

下面这段ASP代码主要生成一个唯一的随机数,这个随机数分两部分格式如下1234-467837前一部分固定,由提交所得,后一部分6位数随机生成

<%
'随机数函数
function gen(digits)
 dim rndnum,num
 Randomize' 对随机数生成器做初始化的动作
 Do while Len(rndnum)<digits
 num = Cstr(Chr((57-48)*rnd+48))'生成0~9的随机数
 rndnum = rndnum & num
 Loop
 gen = rndnum
End function

Server.ScriptTimeout=99999999 '给定Asp脚本执行的最大时间
name=Request.Form("name")'取得随机数的前几位数字,这里是固定的
num=Request.Form("num")'限定生成随机数的个数,也就是生成几个随机数
if not isnumeric(name) or not isnumeric(num) then
 Response.Write("<script>alert('输入错误,产品编码和生成数量都应该是数字!');history.back();</script>")
 Response.End()
end if
num=cint(num)'CInt 函数通常将其四舍五入为最接近的偶数
if num>9999 then
 Response.Write("<script>alert('每次只能生成9999个提取码!');history.back();</script>")
 Response.End()
end if

Response.ContentType ="application/vnd.ms-Excel" '下面输出Excel的格式

%>
<table width="300" border="1" cellspacing="0" cellpadding="0">
<%
n=1
do while n<=num
 p=name&"-"&gen(6)
 Set rs=conn.execute("select top 1 id from zm_p where p='"&p&"'")'添加唯一的随机数到数据库
 if rs.eof then
  conn.execute("insert into zm_p(p) values('"&p&"')")'插入数据
  n=n+1
%>
  <tr>
    <td align="left">
 <%=p%>
 </td>
  </tr>
<%
 end if
loop
%>
  <tr>
    <td align="right">制表日期:<%=now()%></td>
  </tr>
</table>

原载: www.auuo.com/article/2008/20081223834024649.htm

版权说明:原创文章欢迎转载,但转载请务必以超链接标明文章原始出处、作者信息和本声明。否则必追究法律责任。

联系我们

QQ:51193930(Ahoo)
MSN:auuocx@hotmail.com
网址:http://www.auuo.com
地址:慈溪天九商务中心525室
电话:189-0662-0882

我们的优势
拥有优秀的网站设计师与程序工程师,精通各种一流的图形设计软件,如Photoshop、Freehand CorlDraw、Flash、Dreamweaver、Fireworks等等制作网页和平面设计图。以及使用C语言、C#、ASP.NET框架、asp、php等语言为您开发项目,我们为您准备了最专业的技术服务。为您开发的网站精致实用,代码清晰,保证您的网站安全可靠修改方便,最重要的是符合市场需求,并随时为客户解决各种技术问题。

我们正在努力开拓...

baidu

互联网 本网站