C语言信用卡验证程序,信用卡效验程序

2023-11-05 19:40

本文主要是介绍C语言信用卡验证程序,信用卡效验程序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

信用卡效验程序

更新时间:2006年10月09日 00:00:00   作者:

//                                                //

// Credit card validation routine                 //

// May 15, 2000                                   //

// By ariso                                       //

// validateCardCode($number[,$cardtype])          //

function validateCardCode($cardnumber, $cardtype =  'unknown')

{

//Clean up input

$cardtype = strtolower($cardtype);

$cardnumber = ereg_replace( '[-[:space:]]',  '',$cardnumber);

//Do type specific checks

if ($cardtype ==  'unknown') {

//Skip type specific checks

}

elseif ($cardtype ==  'mastercard'){

if (strlen($cardnumber) != 16 || !ereg( '5[1-5]', $cardnumber)) return 0;

}

elseif ($cardtype ==  'visa'){

if ((strlen($cardnumber) != 13 && strlen($cardnumber) != 16) || substr($cardnumber, 0, 1) !=  '4')

return 0;

}

elseif ($cardtype ==  'amex'){

if (strlen($cardnumber) != 15 || !ereg( '3[47]', $cardnumber)) return a;

}

elseif ($cardtype ==  'discover'){

if (strlen($cardnumber) != 16 || substr($cardnumber, 0, 4) !=  '6011') return 0;

}

else {

//invalid type entered

return -1;

}

// Start MOD 10 checks

$dig = toCharArray($cardnumber);

$numdig = sizeof ($dig);

$intIntJ = 0;

for ($intI=($numdig-2); $intI>=0; $intI-=2){

$dbl[$intIntJ] = $dig[$intI] * 2;

$intIntJ++;

}

$dblsz = sizeof($dbl);

$validate =0;

for ($intI=0;$intI

$add = toCharArray($dbl[$intI]);

for ($intIntJ=0;$intIntJ

$validate += $add[$intIntJ];

}

$add =  '';

}

for ($intI=($numdig-1); $intI>=0; $intI-=2){

$validate += $dig[$intI];

}

if (substr($validate, -1, 1) ==  '0') return 1;

else return 0;

}

// takes a string and returns an array of characters

function toCharArray($intInput){

$len = strlen($intInput);

for ($intIntJ=0;$intIntJ

$char[$intIntJ] = substr($intInput, $intIntJ, 1);

}

return ($char);

}

?>

相关文章

1a1b05c64693fbf380aa1344a7812747.png

PHP新手上路(十)...2006-10-10

4f55910a645b073bc4fc65dc10dc14bd.png

怎样在UNIX系统下安装MySQL...2006-10-10

0ea3c7666119d5615e582f823fb3fad6.png

定制404错误页面,并发信给管理员的程序...2006-10-10

4f96a78db829b1556ff16de21e013c7a.png

转换中文日期的PHP程序...2006-10-10

8cc1031babc6aff2319f1c6af8544aa0.png

这篇文章主要介绍了PHP mysql_result()函数使用方法,需要的朋友可以参考下2017-11-11

0c932a99bb7b6f23c937db507070cc7b.png

PHP的目录、文件操作是很简单的,本章用的是windows的服务器,目录名为GBK编码,文件内容为UTF-8编码。这样一目了然。2010-11-11

cca732bf65a93ed2ec0ac80c638460fe.png

PHP4实际应用经验篇(6)...2006-10-10

2d9f31f2af7b675a3d153d2b7f1035a7.png

PHP新手上路(三)...2006-10-10

b452cee8ec5cd9e58ab98eba17281e59.png

第七节--类的静态成员...2006-11-11

f4838ec7e2d4da28e0b57d4e852dadd4.png

在IIS上安装PHP4.0正式版...2006-10-10

最新评论

这篇关于C语言信用卡验证程序,信用卡效验程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/352074

相关文章

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

Spring Security中用户名和密码的验证完整流程

《SpringSecurity中用户名和密码的验证完整流程》本文给大家介绍SpringSecurity中用户名和密码的验证完整流程,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定... 首先创建了一个UsernamePasswordAuthenticationTChina编程oken对象,这是S

Go语言中nil判断的注意事项(最新推荐)

《Go语言中nil判断的注意事项(最新推荐)》本文给大家介绍Go语言中nil判断的注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.接口变量的特殊行为2.nil的合法类型3.nil值的实用行为4.自定义类型与nil5.反射判断nil6.函数返回的

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

Go语言代码格式化的技巧分享

《Go语言代码格式化的技巧分享》在Go语言的开发过程中,代码格式化是一个看似细微却至关重要的环节,良好的代码格式化不仅能提升代码的可读性,还能促进团队协作,减少因代码风格差异引发的问题,Go在代码格式... 目录一、Go 语言代码格式化的重要性二、Go 语言代码格式化工具:gofmt 与 go fmt(一)

Go语言中泄漏缓冲区的问题解决

《Go语言中泄漏缓冲区的问题解决》缓冲区是一种常见的数据结构,常被用于在不同的并发单元之间传递数据,然而,若缓冲区使用不当,就可能引发泄漏缓冲区问题,本文就来介绍一下问题的解决,感兴趣的可以了解一下... 目录引言泄漏缓冲区的基本概念代码示例:泄漏缓冲区的产生项目场景:Web 服务器中的请求缓冲场景描述代码

Go语言如何判断两张图片的相似度

《Go语言如何判断两张图片的相似度》这篇文章主要为大家详细介绍了Go语言如何中实现判断两张图片的相似度的两种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 在介绍技术细节前,我们先来看看图片对比在哪些场景下可以用得到:图片去重:自动删除重复图片,为存储空间"瘦身"。想象你是一个

Go语言中Recover机制的使用

《Go语言中Recover机制的使用》Go语言的recover机制通过defer函数捕获panic,实现异常恢复与程序稳定性,具有一定的参考价值,感兴趣的可以了解一下... 目录引言Recover 的基本概念基本代码示例简单的 Recover 示例嵌套函数中的 Recover项目场景中的应用Web 服务器中

python编写朋克风格的天气查询程序

《python编写朋克风格的天气查询程序》这篇文章主要为大家详细介绍了一个基于Python的桌面应用程序,使用了tkinter库来创建图形用户界面并通过requests库调用Open-MeteoAPI... 目录工具介绍工具使用说明python脚本内容如何运行脚本工具介绍这个天气查询工具是一个基于 Pyt

Ubuntu设置程序开机自启动的操作步骤

《Ubuntu设置程序开机自启动的操作步骤》在部署程序到边缘端时,我们总希望可以通电即启动我们写好的程序,本篇博客用以记录如何在ubuntu开机执行某条命令或者某个可执行程序,需要的朋友可以参考下... 目录1、概述2、图形界面设置3、设置为Systemd服务1、概述测试环境:Ubuntu22.04 带图