Email帐号*

 

在用户申请注册时对EMAIL帐号进行检测,以判断此Email能否正确注册.大部分的论坛都有这个功能,可是当我找来动网的代码进行看的时候竟找不到相应的功能是怎么实现的.很是不爽,只好自己写了.

实现方式如下:
1 判断用户输入的Email帐号是不是有效
2 判断此帐号是不是已经注册了
3 给出注册成功或是出错的原因

其中1中要首先取页面的输入值,代码:

用户申请时对Email帐号的检测function chk_email()
用户申请时对Email帐号的检测{
用户申请时对Email帐号的检测
var url
用户申请时对Email帐号的检测
var email=document.form1.mail.value
用户申请时对Email帐号的检测
if (email=='')
用户申请时对Email帐号的检测  { alert('email不能为空
!') }
用户申请时对Email帐号的检测
else
用户申请时对Email帐号的检测  {
用户申请时对Email帐号的检测    url 
= 'usercheck.asp?email=+ email
用户申请时对Email帐号的检测    window.open(url,'chk','status
=no,toolbar=no,menubar=no,location=no,width=300,height=150')
用户申请时对Email帐号的检测  }
用户申请时对Email帐号的检测}
用户申请时对Email帐号的检测

然后在打开的窗口中检验Email的有效性,实现函数:
用户申请时对Email帐号的检测function IsValidEmail(email)
用户申请时对Email帐号的检测
Dim names
用户申请时对Email帐号的检测
Dim name
用户申请时对Email帐号的检测
Dim i
用户申请时对Email帐号的检测
Dim c
用户申请时对Email帐号的检测IsValidEmail 
= true
用户申请时对Email帐号的检测names 
= Split(email, "@")
用户申请时对Email帐号的检测
if UBound(names) <> 1 then
用户申请时对Email帐号的检测   IsValidEmail 
= false
用户申请时对Email帐号的检测   
exit function
用户申请时对Email帐号的检测
end if
用户申请时对Email帐号的检测
for each name in names
用户申请时对Email帐号的检测   
if Len(name) <= 0 then
用户申请时对Email帐号的检测     IsValidEmail 
= false
用户申请时对Email帐号的检测     
exit function
用户申请时对Email帐号的检测   
end if
用户申请时对Email帐号的检测   
for i = 1 to Len(name)
用户申请时对Email帐号的检测     c 
= Lcase(Mid(name, i, 1))
用户申请时对Email帐号的检测     
if InStr("abcdefghijklmnopqrstuvwxyz_-.", c) <= 0 and not IsNumeric(c) then
用户申请时对Email帐号的检测       IsValidEmail 
= false
用户申请时对Email帐号的检测       
exit function
用户申请时对Email帐号的检测     
end if
用户申请时对Email帐号的检测   
next
用户申请时对Email帐号的检测   
if Left(name, 1= "." or Right(name, 1= "." then
用户申请时对Email帐号的检测      IsValidEmail 
= false
用户申请时对Email帐号的检测      
exit function
用户申请时对Email帐号的检测   
end if
用户申请时对Email帐号的检测
next
用户申请时对Email帐号的检测
if InStr(names(1), "."<= 0 then
用户申请时对Email帐号的检测   IsValidEmail 
= false
用户申请时对Email帐号的检测   
exit function
用户申请时对Email帐号的检测
end if
用户申请时对Email帐号的检测
= Len(names(1)) - InStrRev(names(1), ".")
用户申请时对Email帐号的检测
if i <> 2 and i <> 3 then
用户申请时对Email帐号的检测   IsValidEmail 
= false
用户申请时对Email帐号的检测   
exit function
用户申请时对Email帐号的检测
end if
用户申请时对Email帐号的检测
if InStr(email, ".."> 0 then
用户申请时对Email帐号的检测   IsValidEmail 
= false
用户申请时对Email帐号的检测
end if
用户申请时对Email帐号的检测
end function
用户申请时对Email帐号的检测

然后在过滤字符串之后,查询数据库判断此用户是不是已经存在.给出提示.
Over!
[ASP中实现]

相关文章: