Validate_Finance_CreditCard: Validar datos de una tarjeta de pago (débito/crédito) con PHP
Sábado 23 de Julio de 2011 15:13
Paquete Validate_Finance_CreditCard (Versión Alpha)
Versión PHP >= 5.2
PHP-Pear
Para comprobar que los datos introducidos de una tarjeta de pago tienen una estructura válida, utilizaremos un paquete adicional que se instalan a través de PHP-PEAR. Este paquete se llama Validate_Finance_CreditCard y son un conjunto de funciones que validan la numeración de la tarjeta en función de su tipo y su CVC. Los tipos de tarjetas soportadas son:
MASTERCARD
EUROCARD
EUROCARD/MASTERCARD
VISA
AMEX
AMERICAN EXPRESS
DINERS
DINERSCLUB
CARTEBLANCHE
DISCOVER
JCB
El proceso de instalación es simple:
> apt-get install php-pear
> pear install Validate_Finance_CreditCard channel://pear.php.net/Validate_Finance_CreditCard-0.5.3
Un ejemplo de su uso:
function check_information(){
require 'Validate/Finance/CreditCard.php';
if (empty($this->name)) return (false);
if (empty($this->surname)) return (false);
if (empty($this->email)) return (false);
if (!filter_var($this->email,FILTER_VALIDATE_EMAIL)) return (false);
if (empty($this->id_credit_card)) return (false);
if (empty($this->credit_card_holder)) return (false);
if (empty($this->credit_card_number)) return (false);
if (empty($this->credit_card_year)) return (false);
if (empty($this->credit_card_month)) return (false);
if (empty($this->credit_card_cvc)) return (false);
if ($this->credit_card_year < date("Y")) return (false);
if ($this->credit_card_year == date("Y") && $this->credit_card_month < date("m")) return (false);
$cd_type = new CreditCard();
$cd_type->load($this->id_credit_card);
if (!Validate_Finance_CreditCard::number($this->credit_card_number, $cd_type->get_name_upper())) return (false);
return (true); }





