<?php // Licence Publique Générale GNU (GNU General Publique License), Copyright 2005-2008 Geffrotin Yann
  
  //test
    //include("ECBS_TR_201.php"); // spécifications IBAN
    //$numpays = 0; // de 0 à 55 (56 pays)
  
  //Génération IBAN automatique
  
  do{
    
    $CodeBanque = ''; //init
    $CodeBranche = '';
    $NumeroCompte = '';
    
    for($n=1;$n<=$TCodeBanque[$numpays];$n++){
      $CodeBanque = $CodeBanque.mt_rand('1','9'); // rand BIC
    }
    
    for($o=1;$o<=$TCodeBranche[$numpays];$o++){
      $CodeBranche = $CodeBranche.mt_rand('1','9');
    }
    
    for($p=1;$p<=$TNumeroCompte[$numpays];$p++){
      $NumeroCompte = $NumeroCompte.mt_rand('1','9');
    }
    
    if ($TVerifBBAN[$numpays] != ''){
      $CleBBAN = 97 - (int) fmod (89 * $CodeBanque  + 15 * $CodeBranche + 3 * $NumeroCompte, 97);
    }else{
      $CleBBAN = '';
    }
    
    if (2 == $TVerifBBAN[$numpays]){
      if($CleBBAN < 10){
        $CleBBAN = '0'.$CleBBAN;
      }
    }
    
  }while($TVerifBBAN[$numpays] != strlen($CleBBAN));
  
  $PaysIBAN = $TCodePays[$numpays]; // ex : 'FR'
  
  $BBAN = "".$CodeBanque.$CodeBranche.$NumeroCompte.$CleBBAN.base_convert(substr($PaysIBAN, 0, 1), 36, 10).base_convert(substr($PaysIBAN, 1, 1), 36, 10).'00';
  
  $CleIBAN = '98' - bcmod($BBAN, '97');
  
  if (2 == $TVerifIBAN[$numpays]){
    if($CleIBAN < 10){
      $CleIBAN = '0'.$CleIBAN;
    }
  }
  
  $RIB = "".$CodeBanque.$CodeBranche.$NumeroCompte.$CleBBAN."";
  
  $IBAN = "".$PaysIBAN.$CleIBAN.$RIB."";
  
  mysql_query("INSERT INTO freepay_iban values ('".$IBAN."', '".$PaysIBAN."', '".$CleIBAN."', '".$CodeBanque."', '".$CodeBranche."', '".$NumeroCompte."', '".$CleBBAN."', '10000.00', '".$_SESSION['mailcli']."')"); 

?>
