do like:

if (credit_card::validate("123412341234"))
{
  // yes correct...
} else
{
  // no not correct..
}

I believe this class is from WeberDev and I believe it comes with lots of
comments showing how it works...

-elias
http://www.kameelah.org/eassoft


"Dhaval Desai" <[EMAIL PROTECTED]> wrote in message
[EMAIL PROTECTED]">news:[EMAIL PROTECTED]...
> Hi!
>
> I have the following class for checking a credit card
> type.Can anybody tell me how do I access this class. I
> mean how should I check a credit card type using this
> class..?
>
> Thank you
> DHaval Desai
>
> <?php
>
>
> class credit_card
> {
>     function clean_no ($cc_no)
>     {
>         // Remove non-numeric characters from $cc_no
>         return ereg_replace ('[^0-9]+', '', $cc_no);
>     }
>
>     function identify ($cc_no)
>     {
>          $cc_no = credit_card::clean_no ($cc_no);
>
>         // Get card type based on prefix and length of
> card number
>         if (ereg ('^4(.{12}|.{15})$', $cc_no))
>             return 'Visa';
>         if (ereg ('^5[1-5].{14}$', $cc_no))
>             return 'Mastercard';
>         if (ereg ('^3[47].{13}$', $cc_no))
>             return 'American Express';
>         if (ereg ('^3(0[0-5].{11}|[68].{12})$',
> $cc_no))
>             return 'Diners Club/Carte Blanche';
>         if (ereg ('^6011.{12}$', $cc_no))
>             return 'Discover Card';
>         if (ereg ('^(3.{15}|(2131|1800).{11})$',
> $cc_no))
>             return 'JCB';
>         if (ereg ('^2(014|149).{11})$', $cc_no))
>             return 'enRoute';
>
>         return 'unknown';
>     }
>
>     function validate ($cc_no)
>     {
>         // Reverse and clean the number
>         $cc_no = strrev (credit_card::clean_no
> ($cc_no));
>
>         // VALIDATION ALGORITHM
>         // Loop through the number one digit at a time
>
>         // Double the value of every second digit
> (starting from the right)
>         // Concatenate the new values with the
> unaffected digits
>         for ($ndx = 0; $ndx < strlen ($cc_no); ++$ndx)
>
>             $digits .= ($ndx % 2) ? $cc_no[$ndx] * 2 :
> $cc_no[$ndx];
>
>         // Add all of the single digits together
>         for ($ndx = 0; $ndx < strlen ($digits);
> ++$ndx)
>             $sum += $digits[$ndx];
>
>         // Valid card numbers will be transformed into
> a multiple of 10
>         return ($sum % 10) ? FALSE : TRUE;
>     }
>
>     function check ($cc_no)
>     {
>         $valid = credit_card::validate ($cc_no);
>         $type  = credit_card::identify ($cc_no);
>         return array ($valid, $type, 'valid' =>
> $valid, 'type' => $type);
>     }
> }
>
> __________________________________________________
> Do You Yahoo!?
> Yahoo! Auctions - buy the things you want at great prices
> http://auctions.yahoo.com/
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]
>



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to