当前位置:K88软件开发文章中心编程语言AspAsp01 → 文章内容

asp函数:居民身份证验证的asp函数

减小字体 增大字体 作者:佚名     来源:asp编程网  发布时间:2018-12-30 8:34:37

刚才在网上看到一个居民身份证验证asp函数,感觉到在做用户注册的时候可以用到,于是就转过来,以便大家到时候用到,方便使用。并且经过我的测试,完全没有问题,测试结果是:
1、输入错误的身份证号,程序会输出相应的错误提示。
2、输入正确的身份证号,程序会将这个身份证号直接输出。
函数具体代码如下:

<
%Function CheckCardId(e)arrVerifyCode = Split("1,0,x,9,8,7,6,5,4,3,2", ",")Wi = Split("7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2", ",")Checker = Split("1,9,8,7,6,5,4,3,2,1,1", ",")If Len(e) <
15 Or Len(e) = 16 Or Len(e) = 17 Or Len(e) >
18 ThenCheckCardId= "身份证号共有 15 码或18位"Exit FunctionEnd IfDim AiIf Len(e) = 18 ThenAi = Mid(e, 1, 17)ElseIf Len(e) = 15 ThenAi = eAi = Left(Ai, 6) &
"19" &
Mid(Ai, 7, 9)End IfIf Not IsNumeric(Ai) ThenCheckCardId= "身份证除最后一位外,必须为数字!"Exit FunctionEnd IfDim strYear, strMonth, strDaystrYear = CInt(Mid(Ai, 7, 4))strMonth = CInt(Mid(Ai, 11, 2))strDay = CInt(Mid(Ai, 13, 2))BirthDay = Trim(strYear) + "-" + Trim(strMonth) + "-" + Trim(strDay)If IsDate(BirthDay) ThenIf DateDiff("yyyy",Now,BirthDay) <
-140 or cdate(BirthDay)>
date() ThenCheckCardId= "身份证输入错误!"Exit FunctionEnd IfIf strMonth >
12 Or strDay >
31 ThenCheckCardId= "身份证输入错误!"Exit FunctionEnd IfElseCheckCardId= "身份证输入错误!"Exit FunctionEnd IfDim i, TotalmulAiWiFor i = 0 To 16TotalmulAiWi = TotalmulAiWi + CInt(Mid(Ai, i + 1, 1)) * Wi(i)NextDim modValuemodValue = TotalmulAiWi Mod 11Dim strVerifyCodestrVerifyCode = arrVerifyCode(modValue)Ai = Ai &
strVerifyCodeCheckCardId = AiIf Len(e) = 18 And e <
>
Ai ThenCheckCardId= "身份证号码输入错误!"Exit FunctionEnd IfEnd Functionresponse.write CheckCardId("528337194801020025") %>
(鼠标移到代码上去,在代码的顶部会出现四个图标,第一个是查看源代码,第二个是复制代码,第三个是打印代码,第四个是帮助)


 



asp函数:居民身份证验证的asp函数