関数 CheckCardId(e)
arrVerifyCode = Split(1,0,x,9,8,7,6,5,4,3,2, ,)
Wi = スプリット(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2, ,)
チェッカー = スプリット(1,9,8,7,6,5,4,3,2,1,1, ,)
Len(e) < 15 または Len(e) = 16 または Len(e) = 17 または Len(e) > 18 の場合
CheckCardId= ID番号は15桁または18桁です。
CheckCardId = False
終了関数
終了する場合
ディムA
Len(e) = 18 の場合
Ai = Mid(e, 1, 17)
ElseIf Len(e) = 15 then
アイ=エ
Ai = 左(Ai, 6) & 19 & 中央(Ai, 7, 9)
終了する場合
IsNumeric(Ai) ではない場合
CheckCardId= ID カードは最後の 1 桁を除く数字でなければなりません。
終了関数
終了する場合
Dim str Year、strMonth、strDay
stryear = CInt(Mid(Ai, 7, 4))
strMonth = CInt(Mid(Ai, 11, 2))
strDay = CInt(Mid(Ai, 13, 2))
BirthDay = トリム(str年) + - + トリム(str月) + - + トリム(strDay)
If IsDate(BirthDay) then
DateDiff(yyyy,Now,BirthDay) <-140 または cdate(BirthDay)> date() の場合
CheckCardId= ID カードの入力が間違っています。
終了関数
終了する場合
strMonth > 12 または strDay > 31 の場合
CheckCardId= ID カードの入力が間違っています。
終了関数
終了する場合
それ以外
CheckCardId= ID カードの入力が間違っています。
終了関数
終了する場合
Dim i、TotalmulAiWi
i = 0 ~ 16 の場合
TotalmulAiWi = TotalmulAiWi + CInt(Mid(Ai, i + 1, 1)) * Wi(i)
次
ディム modValue
modValue = TotalmulAiWi Mod 11
Dim strVerifyCode
strVerifyCode = arrVerifyCode(modValue)
Ai = Ai & strVerifyCode
CheckCardId = Ai
Len(e) = 18 かつ e <> Ai の場合
CheckCardId= 間違った ID 番号が入力されました。
終了関数
終了する場合
終了機能
response.write CheckCardId(528337194801020025) ' ' ' ' ' ' '