仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1444|回复: 19
打印 上一主题 下一主题

[学习教程] ASP编程:用ASP法式随机发生用户暗码

[复制链接]
山那边是海 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:28:57 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
asp可以使用微软的activeX 使得网页功能无比强大,不过安全性也较差,而且是基于的windows服务器,所以性能稳定性也一般法式|随机     申明:经由过程随机发生暗码,然后将暗码EMail给注册用户,你可以确认用户的EMail填写是不是准确。主动发生的暗码常常平安性更高,同时,你可以过滤那些有效的用户。  
  把上面的代码保留为random.asp文件:
<%
Sub StrRandomize(strSeed)
  Dim i, nSeed
  nSeed = CLng(0)
  For i = 1 To Len(strSeed)
    nSeed = nSeed Xor ((256 * ((i - 1) Mod 4) * AscB(Mid(strSeed, i, 1))))
  Next
  Randomize nSeed
End Sub

Function GeneratePassword(nLength)
  Dim i, bMadeConsonant, c, nRnd
  Const strDoubleConsonants = "bdfglmnpst"
  Const strConsonants = "bcdfghklmnpqrstv"
  Const strVocal = "aeiou"
  GeneratePassword = ""
  bMadeConsonant = False
  For i = 0 To nLength
    nRnd = Rnd
    If GeneratePassword <> "" AND (bMadeConsonant <> True) AND (nRnd < 0.15) Then
      c = Mid(strDoubleConsonants, Int(Len(strDoubleConsonants) * Rnd   1), 1)
      c = c & c
  i = i   1
      bMadeConsonant = True
    Else
      If (bMadeConsonant <> True) And (nRnd < 0.95) Then
        c = Mid(strConsonants, Int(Len(strConsonants) * Rnd   1), 1)
        bMadeConsonant = True
      Else
        c = Mid(strVocal,Int(Len(strVocal) * Rnd   1), 1)
        bMadeConsonant = False
      End If
    End If
    GeneratePassword = GeneratePassword & c
  Next
  If Len(GeneratePassword) > nLength Then
    GeneratePassword = Left(GeneratePassword, nLength)
  End If
End Function
%>

  然后在你的方针法式中如许挪用下面的代码,就能够完成暗码的主动生成:(仅仅是一个例子,你可以把他们粘贴到一个Test.asp的文件中,然后运转Test.asp)
<!--include file="random.asp" -->
<%
'发生一个六位的暗码
StrRandomize CStr(Now) & CStr(Rnd)
response.write GeneratePassword(6)
%>
<br><br>
<%
'发生一个8位的暗码
StrRandomize CStr(Now) & CStr(Rnd)
response.write GeneratePassword(8)
%>
<br><br>

<%
'发生一个10位的暗码
StrRandomize CStr(Now) & CStr(Rnd)
response.write GeneratePassword(10)
%>
<br><br>
<%
'发生1000个暗码
dim t, t2
  for t = 1 to 500
  For t2 = 1 to 661
  StrRandomize CStr(Now) & CStr(Rnd)
  next
  StrRandomize CStr(Now) & CStr(Rnd)
  response.write GeneratePassword(6)
  response.write "<br>"
next
%>
无法实现跨操作系统的应用。当然这也是微软的理由之一,只有这样才能发挥ASP最佳的能力。可是我却认为正是Windows限制了ASP,ASP的概念本就是为一个能让系统运行于一个大的多样化环境而设计的;
山那边是海 该用户已被删除
沙发
 楼主| 发表于 2015-3-6 14:24:18 | 显示全部楼层
我想问如何掌握学习节奏(先学什么再学什么)最好详细点?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-14 00:40

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表