Hab mal eine kleine Funktion gebaut, die dir ziemlich helfen wird.
Diese prüft folgenden Part des Personalausweises (neu und alt) auf gültigkeit und darauf, ob die person 18 ist.
![](http://i86.img-up.net/welchenumm444d.png)
Bitteschön:
Code:
function checkAge($personum) {
$sum = 0;
for($i = 0;$i < 6;$i++) {
$sum += (intval(substr($personum,$i,1)) * intval(substr("731731",$i,1)));
}
if(intval(substr($personum,6,1)) == intval(substr((string)$sum,-1))) {
$age = intval((time() - mktime(0, 0, 0, intval(substr($personum,2,2)), intval(substr($personum,4,2)), intval(substr($personum,0,2)))) / 31536000);
return($age >= 18);
}else{
return(false);
}
}
checkAge("6408125");
Viel Spaß damit.
PS: Ich werde den Code später hier wieder entfernen, um hackern und fakern weniger material zu liefern, diese funktion zu umgehen ![Lächeln](/images/smilies/smile.png)
Ich könnte das gesamte System auch noch weiterschreiben zum validieren des gesamten Personalausweises. Aber das würd ich dann wohl nur gegen Bezahlung machen. Ist nämlich dann ne ganz schöne Rechenaufgabe.