鐵之狂傲

 取回密碼
 註冊
搜尋

名望的英雄

KUSO四格畫家

切換到指定樓層
1#
以下模組請放置於<html>標籤之前

Function CheckID(InputID)
CheckID = "False"
InputID = UCase(InputID)

1.必需10個字元.
IF InputID <> "" AND Len(InputID) = 10 THEN
IF ASC(Left(InputID,1)) < 64 OR ASC(Left(InputID,1)) > 91 THEN
CheckID = "ERR-2"

身份證字號的第一碼必需是合法的英文字母

ELSEIF MID(InputID,2,1) <> "1" AND MID(InputID,2,1) <> "2" THEN
CheckID = "ERR-3"

身份證字號的第二碼必需是數字 1 或 2

ELSE
FOR i = 2 to Len(InputID)
IF ASC(Mid(InputID,i,1)) < 47 OR ASC(Mid(InputID,i,1)) > 58 THEN CheckID = "ERR-4"

身份證字號的後九碼必需是數字

NEXT
END IF


IF Mid(CheckID,1,3) <> "ERR" THEN
ID_ABC_Data = "A10B11C12D13E14F15G16H17I34J18K19L20M21N22O35P23Q24R25S26T27U28V29W30X31Y32Z33"
InputID = Mid(ID_ABC_Data,InStr(ID_ABC_Data,Left(InputID,1)) + 1,2) & Mid(InputID,2)
GetNo = 2
SUM = Left(InputID,1)
FOR i = 9 TO 1 STEP -1
SUM = SUM + Mid(InputID,GetNo,1) * i
GetNo = GetNo + 1
NEXT
IF ASC(Right(InputID,1)) = ASC(Right(10 - Right(SUM,1),1)) THEN CheckID = "True"

通過檢查

END IF
ELSE
CheckID = "ERR-1"

不可留空白或輸入位數錯誤

END IF
End Function

------------------------------------------------

其實只要通過驗證系統這關就行了

通常使用的萬用字號是A~Z+ 1 or 2 + 00000000

能被整除的就可以避過驗證

整除公式:

(第一字元的十位數+第一字元的個位數 * 9 +第二字元 * 8 +第三字元 * 7 +第四字元 * 6 +第五字元 * 5 +第六字元 * 4 +第七字元 * 3 +第八字元 * 2 +第九字元 +第十字元 ) / 10
 
轉播0 分享0 收藏0

回覆 使用道具 檢舉

名望的英雄

KUSO四格畫家

回覆: 驗證身分證字號

之後的工作就是"驗證"

IF CheckID(Request("ID")) = "True" THEN
Response.Write "通過檢查"
ELSEIF CheckID(Request("ID")) = "False" THEN
Response.Write "不合法的身份證字號"
ELSEIF CheckID(Request("ID")) = "ERR-1" THEN
Response.Write "不可留空白或輸入位數錯誤"
ELSEIF CheckID(Request("ID")) = "ERR-2" THEN
Response.Write "身份證字號的第一碼必需是合法的英文字母"
ELSEIF CheckID(Request("ID")) = "ERR-3" THEN
Response.Write "身份證字號的第二碼必需是數字 1 或 2"
ELSEIF CheckID(Request("ID")) = "ERR-4" THEN
Response.Write "身份證字號的後九碼必需是數字"
END IF

---------------------------------------------------

這個放在<body></body>的標籤內
 

回覆 使用道具 檢舉

你需要登入後才可以回覆 登入 | 註冊

存檔|手機版|聯絡我們|新聞提供|鐵之狂傲

GMT+8, 24-12-27 02:58 , Processed in 0.018475 second(s), 15 queries , Gzip On.

回頂部