Ver Mensaje Individual
  #9 (permalink)  
Antiguo 21/04/2006, 20:34
Avatar de uamistad
uamistad
 
Fecha de Ingreso: diciembre-2004
Ubicación: Cd. de México
Mensajes: 1.395
Antigüedad: 19 años, 4 meses
Puntos: 1
Qué código tan sencillo, nunca me hubiera imaginado que sólo era cuestión de sumar los 16 números, con una ligera excepción en los impares.

Me he quedado con la boca abierta, vaya que es útil el código p' no tener que dejarle todo al banco. Incluso desde Javascript sería factible validarlo, dejo una función que me sirvió para ver si esto del algoritmo era cierto, probé todas las tarjetas que me encontré por ahí, incluso unas de varios años atrás y que ya caducaron. Con todas funcionó.

Código PHP:
<?
function is_valid_card($card_number){
     
$suma 0;
     for(
$i=0;$i<16;$i++)
         if(
$i 2$suma += $card_number[$i]; //par            
         
else  //impar
             
if($card_number[$i]!=9$suma += 2*$card_number[$i] % 9;
             else 
$suma += 9;

     if(
$suma%10==&& $suma 150) return true;
     return 
false;
    }
//end function
?>
__________________
"Di no al Internet Explorer" -Proverbio Chino-