Advertisement
Guest User

Kenneth

a guest
Feb 17th, 2011
458
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.53 KB | None | 0 0
  1.         // - PERSONNUMMER
  2.         $numb = $_POST['Personnummer'];
  3.         //dersom personnummer er fylt i
  4.         if(!empty($numb)){
  5.             //fjerner alt som ikke er tall
  6.             $numb = preg_replace('/[^0-9]/', '', $numb);
  7.                 //kontrollsjekk k1
  8.                 $k1 = (3*$numb[0] + 7*$numb[1] + 6*$numb[2] + 1*$numb[3] + 8*$numb[4] + 9*$numb[5] + 4*$numb[6] + 5*$numb[7] + 2*$numb[8]) % 11;           
  9.                     if($k1 == "0"){
  10.                         $k1 = 0;
  11.                     }else{
  12.                         $k1 = 11-$k1;
  13.                     }
  14.                 //kontrollsjekk k2
  15.                 $k2 = (5*$numb[0] + 4*$numb[1] + 3*$numb[2] + 2*$numb[3] + 7*$numb[4] + 6*$numb[5] + 5*$numb[6] + 4*$numb[7] + 3*$numb[8] + 2*$k1) % 11;
  16.                     if($k2 == "0"){
  17.                         $k2 = 0;
  18.                     }else{
  19.                             $k2 = 11-$k2;
  20.                     }
  21.                 //er det nå bare tall ?  og er 11 siffer
  22.                     if((preg_match('#[^0-9]#', $numb)) || (strlen($numb) != 11) || (($k1 != $numb[9]) || ($k2 != $numb[10]))){
  23.                         $reg_error[] = 1;
  24.                         $error_1 = 1;
  25.                     }
  26.                         //mann / kvinne
  27.                 $gender = "2"; //mann
  28.                 if(($numb[8] % 2) == 0){
  29.                         $gender = "1";
  30.                 }
  31.                     //Er dette et D-nummer
  32.                 if($numb[0] > 3){
  33.                     $numb1 = $numb[0] - 4;
  34.                 }else{
  35.                     $numb1 = $numb[0];
  36.                 }
  37.                     //Er dette et H-nummer
  38.                 if($numb[2] > 1){
  39.                     $numb3 = $numb[2] - 4;
  40.                 }else{
  41.                     $numb3 = $numb[2];
  42.                 }
  43.                 //her må vi foreta aldersjekken dersom det ikke er feil i perosnnummeret
  44.                 if (!isset($reg_error)){
  45.                         //er personen født før eller etter år 2000
  46.                     if(($numb[6] < 5)||(($numb[6] = 9) && ($str_y >= 40 ))){
  47.                         $år_t = 19;
  48.                     }elseif(($numb[6] >= 5) || ($str_y < 40 )){
  49.                         $år_t = 20;
  50.                     }
  51.                     //Må være 25år max 70år for invilgelse av søknad
  52.                     $min_age = 25;
  53.                     $max_age = 70;         
  54.                     //Antall minimumsår jobbe
  55.                     $min_age_work = 13;
  56.                     //Antall minimumsår bosted
  57.                     $min_age_move = 0;         
  58.                     //dato for når individ er født
  59.                     $str_y = $numb[4].$numb[5];
  60.                     $str_dm = date('d-m-Y', strtotime($numb1.substr($numb, 1, 1)."-".$numb3.substr($numb, 3, 1)."-".$år_t.substr($numb, 4, 2)));
  61.                     $str_dmL = strtotime($numb1.substr($numb, 1, 1)."-".$numb3.substr($numb, 3, 1)."-".(($år_t.substr($numb, 4, 2))+ $min_age));
  62.                     $year_work = date($numb1.substr($numb, 1, 1)."-".$numb3.substr($numb, 3, 1)."-".(($år_t.substr($numb, 4, 2))+ $min_age_work));
  63.                     $year_work = substr($year_work, 6, 4);
  64.                     $year_move = date($numb1.substr($numb, 1, 1)."-".$numb3.substr($numb, 3, 1)."-".(($år_t.substr($numb, 4, 2))+ $min_age_move));
  65.                     $year_move = substr($year_move, 6, 4);
  66.                     $today = strtotime(date("d-m-Y"));
  67.                     //over 25år under 70år - ellers søknad avslås automatisk
  68.                     $birthday_max_year = $år_t.substr($numb, 4, 2)+ $max_age;  //her har vi fødselsdato + 70år
  69.                     $birthday_max_month = $numb3.substr($numb, 3, 1);   //her har vi fødselsmåneden
  70.                     $birthday_max_day = $numb1.substr($numb, 1, 1); //her har vi fødselsdagen
  71.                
  72.                                 if(
  73.                                         ($today < $str_dmL) || (date("Y") > $birthday_max_year)||
  74.                                             ((date("Y") == $birthday_max_year)&&(date("m") > $birthday_max_month))||
  75.                                                 ((date("Y") == $birthday_max_year)&&(date("m") == $birthday_max_month)&&(date("d") > $birthday_max_day))
  76.                                 ){
  77.                                                 //hvorfor avslag ? for gammel eller for ung ?
  78.                                                 if($today < $str_dmL){
  79.                                                            
  80.                                                             $subject1 = "For ung - ";
  81.                                                             $text_body = $subject1.$text_body;
  82.                                                     $file="nettside-store-avslag.txt";
  83.                                                             $open=fopen($file,"a");
  84.                                                            
  85.                                                                     if($open){        
  86.                                                                         fwrite($open,$text_body);
  87.                                                                             fclose($open);
  88.                                                                     }
  89.                                                                    
  90.                                                             header("Location: https://www.nettside.no/avslag.php?a=1"); //for ung
  91.                                                     exit;
  92.                                             }else{
  93.  
  94.                                                             $subject2 = "For gammel - ";
  95.                                                             $text_body = $subject2.$text_body;
  96.                                                     $file="nettside-store-avslag.txt";
  97.                                                             $open=fopen($file,"a");
  98.                                                            
  99.                                                                     if($open){        
  100.                                                                         fwrite($open,$text_body);
  101.                                                                             fclose($open);
  102.                                                                     }                                          
  103.                                                    
  104.                                                     header("Location: https://www.nettside.no/avslag.php?a=2"); //for gammel
  105.                                                     exit;
  106.                                             }
  107.                                    
  108.                                 }
  109.                                                        
  110.                 }  
  111.                 //skifter bare navn
  112.                 $Personnummer = $numb;
  113.                                
  114.         //dersom feltet er tomt
  115.         }else{
  116.                 $reg_error[] = 11;
  117.                 $error_1 = 1;
  118.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement