Perso Check
Dieses Script überprüft Deine Personalnummer auf seine
Richtigkeit!
|
|
Script: |
<?php
function check_number($number=0){
$p
= 7;
for($i=0;
$i <
strlen(strval($number));
$i++){
$return
+= substr($number[$i]*$p,
-1);
if($p==1)
$p=7;
elseif($p==3)
$p=1;
elseif($p==7)
$p=3;
}
return $return;
}
function perso_check($id=0){
$array
= explode("
", $id);
if(substr(check_number(substr($array[0],
0,
9)),
-1)==substr($array[0],
9,
1)){
$check["serial"]
= true;
}
if(substr(check_number(substr($array[1],
0,
6)),
-1)==substr($array[1],
6,
1)){
$check["birthday"][0]
= true;
}
if(substr(check_number(substr($array[2],
0,
6)),
-1)==substr($array[2],
6,
1)){
$check["expiration"][0]
= true;
}
if(time()
< mktime(0,0,0,
substr($array[2],
2,
2)
, substr($array[2],
4,
2)
, substr($array[2],
0,
2))){
$check["expiration"][1]
= true;
}
if(substr(check_number(substr($array[0],
0,
10).substr($array[1],
0,
7).substr($array[2],
0,
7)),
-1)==$array[3]){
$check["all"]
= true;
}
if($check["serial"]
== true &&
$check["birthday"][0]
== true &&
$check["expiration"][0]
== true &&
$check["expiration"][1]
== true &&
$check["all"]
== true){
return true;
}
else { return false;
}
}
# Beispielaufruf
if(perso_check("123456789D
1234567 1234567 0")==true)
{
echo "Personalnummer
korrekt";
}
else {
echo "Personalnummer
falsch";
}
?>
|
|
|