找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1086|回复: 0
打印 上一主题 下一主题

php实现通用的信用卡验证类

[复制链接]

2536

主题

2536

帖子

7532

积分

论坛元老

Rank: 8Rank: 8

积分
7532
跳转到指定楼层
楼主
发表于 2018-2-14 05:47:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            本文实例讲述了php实现通用的信用卡验证类。分享给大家供大家参考。
原文说明如下:
Credit Card Validation Solution (PHP Edition)
Version 3.5
Description
Credit Card Validation Solution™ uses a four step process to ensure credit card numbers are keyed in correctly. This procedure accurately checks cards from American Express, Australian BankCard, Carte Blache, Diners Club, Discover/Novus, JCB, MasterCard and Visa.
For more information, please read the comments in the code itself.
Installation Instructions
Select the text between the two lines indicated, below.
Copy the text.
Open up a text editor.
Paste the text.
Save that file. When saving it, make sure to:
save it in a directory on your webserver, and
name it with an extension that your server will recognize needs parsing by PHP.
To see it in action, open up that file in your web browswer.
具体代码如下:
= 3000 and $NumberLeft = 3600 and $NumberLeft = 3800 and $NumberLeft = 3400 and $NumberLeft = 3700 and $NumberLeft = 3528 and $NumberLeft = 3890 and $NumberLeft = 4000 and $NumberLeft  14) {
      $ShouldLength = 16;
    } elseif ($NumberLength The Visa number entered, $Number, in is 14 digits long.
Visa cards usually have 16 digits, though some have 13.
Please check the number and try again.
n";
      return FALSE;
    }
  } elseif ($NumberLeft >= 5100 and $NumberLeft The first four digits of the number entered are $NumberLeft.
If that's correct, we don't accept that type of credit card.
If it's wrong, please try again.
n";
    return FALSE;
  }
  # 3) Is the number the right length?
  if ($NumberLength  $ShouldLength) {
    $Missing = $NumberLength - $ShouldLength;
    if ($Missing The $CardName number entered, $Number, is missing " . abs($Missing) . " digit(s).
Please check the number and try again.
n";
    } else {
      echo "
The $CardName number entered, $Number, has $Missing too many digit(s).
Please check the number and try again.
n";
    }
    return FALSE;
  }
  # 4) Does the number pass the Mod 10 Algorithm Checksum?
  if (Mod10Solution($Number) == TRUE) {
    return TRUE;
  } else {
    echo "
The $CardName number entered, $Number, is invalid.
Please check the number and try again.
n";
  return FALSE;
  }
}
function OnlyNumericSolution ($Number) {
  # Remove any non numeric characters.
  # Ensure number is no more than 19 characters long.
  return substr( ereg_replace( "[^0-9]", "", $Number) , 0, 19);
}
function Mod10Solution ($Number) {
  $NumberLength = strlen($Number);
  $Checksum = 0;
  # Add even digits in even length strings
  # or odd digits in odd length strings.
  for ($Location = 1 - ($NumberLength % 2); $Location is valid.
n";
    }
  } else {
    $Number = "";
  }
  # Setup an input form. Posting it calls this page again.
  echo "n";
  echo "
Credit Card Number: n";
  echo "n";
  echo "
n";
#
# ------------ END SAMPLE USER INTERFACE SECTION -------------
?>
希望本文所述对大家的php程序设计有所帮助。
            
            
您可能感兴趣的文章:
  • php实现信用卡校验位算法THE LUHN MOD-10示例
  • PHP实现通过Luhn算法校验信用卡卡号是否有效
  • PHP随机生成信用卡卡号的方法
  • PHP 芝麻信用接入的注意事项
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端