我们在制作在线注册时难免用到身份证号码这个属性,为了避免用户随意输入,我们还是要明白身份证编制规则,可以一定程度阻止非法信息,本文是以教学和网络应用为目的的说明。
首先说说我国居民身份号码证号码(18位)编制原则,首6位是出生地区编码,分别是省份编码2位+城市编码2位+区县编码2位。接下来的8位是生日编码采取4位年2位月和2位日。接下来的3位编码是随机编码,自然人出生后在公安机关注册时的随机编码。这17位编码是有意义编码,而最后一位是校验位,有11种,就是0~9和X。
明白原理后就好办了,有意义数字是确定的,校验位肯定是算出来的。算法规则是加权平均求值,也就是前17位数字每位上有一个权值,用确定的17位数字每位和对应的权值相乘再求和得出加权数。加权数对11求模,得到的就是校验码。
知道这些后就需要知道权值了,每位的权值如下规定:{ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5,8, 4, 2 },校验码排列规则是:{ 1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2 }。
有了这些,我们得到如下程序代码:
public class idcard {
private static int[] weight = { 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5,
8, 4, 2 };
private static int[] check = { 1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2 };
public static String checkCode(String idno17) {
String checkCode = null;
// 1.S=sum(ai*wi)
int sum = 0;
for (int i = 0; i < 17; i++) {
sum += Integer.parseInt(idno17.substring(i, i + 1)) * weight[i];
}
// 2.y=mod(s,11)
int mod = sum % 11;
checkCode = mod == 2 ? "X" : String.valueOf(check[mod]);
return checkCode;
}
public static void main(String[] args) {
String idno = "";// 在这里添加身份证号的前17位
String check = idcard.checkCode(idno);
System.out.println(check);
}
}
地区编码可以在网上找到,这里就不列举出来了,如需使用,页面上可以利用Ajax技术进行实时校验反馈,希望对使用者有用。但不要用于其他不良行为。
分享到:
相关推荐
3.身份证验证根据用户提供的身份证信判断出省市,然后在判断....做到只能输入 正确的省份证信息才可以.... 判断身份证的方法比使用正则表达式更加准确详细请看 js中的 checkidcard.js 判断省份证的 js function ...
随着现在互联网的发展,越来越多的注册用户的地方都用到了身份证,那么对于输入的身份证如何验证呢?看下面的代码,其实很简单。 主要注意的是,目前的身份证分为16和18位,然后分别验证校验位,省份,生日即可。 ...
运行中的代码包括STRUTS.XML,ACTION,页面调用代码进行了注释,,,在用户输入完成身份证号自动验证是否正确以及是否存在,并动态显示"正在验证身份证号",对身份证号输入错误的进行提前提醒,减少...
在用户注册页面有些需求要求的比较严格,需要对身份证验证是否合法,通过此功能严格此系统软件,从而过滤到很多水客。此篇文章主要是讲解如何用javascript正则表达式验证身份证号码是否合法,需要的朋友可以参考下
可以用在.asp .php .jsp的用户...3.身份证验证根据用户提供的身份证信判断出省市,然后在判断....做到只能输入 正确的省份证信息才可以.... 判断身份证的方法比使用正则表达式更加准确详细请看 js中的 checkidcard.js
所有报名内容都要经过验证,互联网上细节做的到位的25175报名类软件 通过注册的帐号:密码:验证码:进行登陆学生 后台路径Admin/Login.aspx 管理员admin 密码aaa 密码是加MD5加密,分页技术,用户群删
在用户注册页面有些需求要求的比较严格,需要对身份证js验证是否合法,通过此功能严格此系统软件,从而过滤到很多水客。下面就此实现方法给大家讲解下。 很多时候我们都是通过一组正则表达式来判断用户输入的...
经常有网友找我要注册即时提示系统,为了更好的让朋友们明白,今天特别整理了一份ASP+ajax的注册...4、注册时验证用户输入的验证码和系统产生的验证码是否一致。 5、对输入中文验证 6、QQ号码验证 7、身份证号码验证
下面一段简单的代码给大家介绍正则表达式...一些要求用户信息比较严格的地方比如用户注册、登录的时候都需要验证用户的身份证是否合法,而通过这些验证能大大的过滤掉很多水客,给你的系统带来非常精准的用户信息。
Validate用户注册表单验证插件是一款基于jQuery实现的通用表单验证插件,有DEMO...可以进行账号、密码、电话、手机、IP、URL、电子邮箱、中文姓名、身份证号码、数字验证码、自定义验证规则-数字等用户注册信息的验证。
jQuery表单提交验证verify一套完整的用户注册前端校验,包含用户名,密码强度,显示隐藏密码,手机号输入控制手机验证码,真实姓名,身份证号等验证。
项目中正好写到登录注册,在用blur事件验证用户输入内容的时候,出现了点bug,最后是在注册按钮onclick的事件里获取用户输入值来验证的。 判断checked选中状态: if(!$('#checkedAgree').prop("checked"){ console...
功能介绍:jQuery多功能注册表单验证插件代码,能够验证几乎所有字段,让你自定义错误提示的长度,提示内容,提示字体颜色,还能与php动态验证手机号或者用户名在数据库是否存在,还能验证身份证是否输入正确,还能配合短信...
在实际运用中,用户输入的数据不一定符合要求,所以需要程序员对这些注册的数据进行及时地...本单元将介绍住户管理模块中业主注册页面上的业主编号、姓名、身份证号码、联系人、入住日期、电子信箱等输入信息的验证。
Javascript + 验证注册用户信息
功能简介: /Registration.asp 学生注册系统主文件 报名内容{用户名,密码,确认密码,EMail,QQ号码 ,真实姓名 ,性别,年龄,家庭住址,电话,手机,身份证号码,密码提示问题,安全...md5双重加密,防SQL注入,分页技术,用户群删,
1. 设计并实现一个带验证控件的用户注册页面 要求如下: (1)页面浏览效果如图5-1和图5-2所示。 (2)"用户名""密码""确认密码""生日""电话号码""身份证号"等信息必须输入。 (3)"密码"和"确认密码"的输入值必须一致。 ...
进入系统登录页面,点击新用户注册,进入填写用户基本信息页面,在这里填写用户的基本信息,点击确定(注:此时可以对用户的基本输入信息进行验证,如用户名是否重复,身份证是否合法等,在验证身份证时,15位身份证...
3. **用户管理**:提供用户注册、登录功能,以及管理人员对员工信息的维护界面。 4. **数据分析与报告**:生成考勤数据统计报告,帮助管理层分析员工出勤情况。 5. **异常处理**:对无法识别的身份证图像进行标记,...