ID -Kartenüberprüfungscodefunktion
FunctionCheckCardid (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", "),"), "),")
Iflen (e) <15orlen (e) = 16orlen (e) = 17Orlen (e)> 18Then
CheckCardid = "Die ID -Nummer hat insgesamt 15 Codes oder 18 Ziffern"
CheckCardId = false
Ausgangsfunktion
Endif
Dimai
Iflen (e) = 18Then
AI = MID (E, 1,17)
Elseiflen (e) = 15Then
Ai = e
Ai = links (ai, 6) & "19" & Mid (AI, 7,9)
Endif
Ifnotisnumeric (ai) dann
CheckCardid = "Außer der letzten Ziffer muss die ID -Karte eine Nummer sein!"
Ausgangsfunktion
Endif
Dimstryear, Strmonth, strday
Stryear = Cint (Mid (Ai, 7,4))
strmonth = cint (Mid (Ai, 11,2))
strday = cint (Mid (Ai, 13,2))
Geburtstag = Trim (Stryear)+"-"+trim (strmonth)+"-"+trim (strday)
Ifisdate (Geburtstag) dann
Ifdatediff ("yyyy", jetzt, Geburtstag) <-140OrcDate (Geburtstag)> Date () dann
CheckCardId = "Identitätskarte fälschlicherweise eingegeben!"
Ausgangsfunktion
Endif
Ifstrmonth> 12orstray> 31Then
CheckCardId = "Identitätskarte fälschlicherweise eingegeben!"
Ausgangsfunktion
Endif
Anders
CheckCardId = "Identitätskarte fälschlicherweise eingegeben!"
Ausgangsfunktion
Endif
Dimi, Totalmulaiwi
Fei = 0to16
TotalMulaiwi = TotalMulaiwi+Cint (Mid (AI, I+1,1))*WI (i)
Nächste
DIMMODVALUE
modvalue = totalMulaiwimod11
DimstrverifyCode
strverifyCode = arrverifyCode (modValue)
AI = AI & StreverifyCode
CheckCardid = ai
Iflen (e) = 18ande <> aithen
CheckCardid = "Identitätskartennummer falsch eingegeben!"
Ausgangsfunktion
Endif
Endfunktion
Antwort.
'' '' Dies Wenn die zurückgegebene ID -Karte eingegeben wird, bedeutet dies, dass sie korrekt ist, andernfalls wird ein Fehler aufgefordert ...