Al realizar una aplicación de comercio electrónico es muy importante validar los distintos tipos de tarjetas de credito que hay, esta es una simple función para validarla, solo tiene que llamar a la función getTipoTarjeta(“4111 1111 1111 1111?);

function validarTarjeta($num_tarjeta)
{
$num_tarjeta = preg_replace(“/\D|\s/”, “”, $num_tarjeta);
$length = strlen($num_tarjeta);

$parity = $length % 2;
$sum=0;

for($i=0; $i<$length; $i++)
{
$digit = $num_tarjeta [$i] ;
if ($i%2==$parity) $digit=$digit*2;
if ($digit>9) $digit=$digit-9;
$sum=$sum+$digit;
}

return ($sum%10==0);
}

function getTipoTarjeta($cc)
{
$cards = array(
“visa” => “(4\d{12}(?:\d{3})?)”,
“amex” => “(3 [47] \d{13})”,
“jcb” => “(35 [2-8] [89] \d\d\d{10})”,
“maestro” => “((?:5020|5038|6304|6579|6761)\d{12}(?:\d\d)?)”,
“solo” => “((?:6334|6767)\d{12}(?:\d\d)?\d?)”,
“mastercard” => “(5 [1-5] \d{14})”,
“switch” => “(?:(?:(?:4903|4905|4911|4936|6333|6759)\d{12})|(?:(?:564182|633110)\d{10})(\d\d)?\d?)”,
);

$names = array(“Visa”, “American Express”, “JCB”, “Maestro”, “Solo”, “Mastercard”, “Switch”);

$matches = array();

$pattern = “#^(?:”.implode(“|”, $cards).”)$#”;

$result = preg_match($pattern, str_replace(” “, “”, $cc), $matches);

if($result > 0)
{
$result = (validarTarjeta($cc))?1:0;
}

return ($result>0)?$names [sizeof($matches)-2] :false;
}
//ejm:
echo getTipoTarjeta(“4111 1111 1111 1111”);

Tamaño de letra en CSS La recomendación más importante cuando se trabaja con las propiedades tipográficas de CSS está relacionada con el tamaño de la letra. La propieda...
Facebook presenta una versión web ligera de Moments Ya ha pasado prácticamente un año desde que Facebook eliminase la función de sincronización de las fotografías móviles en favor de Moments, su nueva a...
La mayoría en EEUU usa celulares para acceder a Internet Según el Centro de Investigaciones Pew de Estados Unidos (Pew Research Center), 63% de los dueños de teléfonos celulares usa estos dispositivos para c...
Samsung llegando al millon de telefonos ofrecidos en un día El catálogo de Samsung abarca teléfonos móviles de todas las categorías. Trata de cubrir las necesidades de todos los usuarios con modelos básicos, mu...
Android en la delantera Android reportó un crecimiento de un 6%, apoderándose un 34,7% del mercado estadounidense. En segundo puesto está Resarch in Motion Ltd (RIM), que...
Scripts to install Web Project Managers qdPM is a free web-based project management tool suitable for a small team working on multiple projects. It is fully configurable. You can easy manage...
JavaScript básico Sintaxis La sintaxis de un lenguaje de programación se define como el conjunto de reglas que deben seguirse al escribir el código fuente de los...
Estudio sobre el Comportamiento de los Usuarios de Pinterest 103 millones de visitas mensuales y un promedio de 15,8 minutos que los usuarios pasan en el sitio.. es algo muy apreciable, y es que así empiezo a ha...
Ventajas y desventajas de tener un foro de empresa en tu Web Antes de meternos en las ventajas y desventajas de tener un foro empresa integrado en tu sitio Web, hablemos un poco de en qué consiste un foro de dis...
La descarga de apps se disparó un 125% el día de Navidad La popularización de los teléfonos inteligentes no ha supuesto únicamente que se dispare el envío de mensajes y felicitaciones a través de programas d...
Validar Numero de tarjeta de credito Expresiones regulares en php