Bluezz旅遊筆記本

讚一個! Bluezz粉絲團
  • 計數器
  • 寄給朋友
  • facebook分享
  •  建立:2007-05-15  更新:2007-05-15
 

身分證字號檢查php


相關標籤 身分證  

字體:
server端的身分證號碼認證可以防止有效防止使用者造假
本頁網址:https://bluezz.tw/c.php?id=787



讚一個! Bluezz粉絲團

 
php身分證字號檢查source code
<p align="center"><font color="black">身分證字號檢查</font>

<center>
<form method="post">
        請輸入身分證號碼
          <input type="text" name="identity">
          <input name="act" type="submit" value="檢查" />
  <br> <br><hr width="80%">
</form>
<br>
<?
// 身分證檢查函數
function check_identity($id) {
$flag = false;
$id=strtoupper($id);
$d0=strlen($id);
$qd="";
if ($d0 <= 0) {$qd=$qd."還沒填呢 !n";}
if ($d0 > 10) {$qd=$qd."超過10個字 !n";}
if ($d0 < 10 && $d0 > 0) {$qd=$qd."不滿10個字 !n";}
$d1=substr($id,0,1);
$ds=ord($d1);
if ($ds > 90 || $ds < 65) {$qd=$qd."第一碼必須是大寫的英文字母 !n";}
$d2=substr($id,1,1);
if($d2!="1" && $d2!="2") {$qd=$qd."第二碼有問題 !n";}
for ($i=1;$i<10;$i++) {
$d3=substr($id,$i,1);
$ds=ord($d3);
if ($ds > 57 || $ds < 48) {$n=$i+1;$qd=$qd."第二到十碼有問題 !n";
break;}
}
$num=array("A" => "10","B" => "11","C" => "12","D" => "13","E" => "14",
"F" => "15","G" => "16","H" => "17","J" => "18","K" => "19","L" => "20",
"M" => "21","N" => "22","P" => "23","Q" => "24","R" => "25","S" => "26",
"T" => "27","U" => "28","V" => "29","X" => "30","Y" => "31","W" => "32",
"Z" => "33","I" => "34","O" => "35");
$n1=substr($num[$d1],0,1)+(substr($num[$d1],1,1)*9);
$n2=0;
for ($j=1;$j<9;$j++) {
$d4=substr($id,$j,1);
$n2=$n2+$d4*(9-$j);
}
$n3=$n1+$n2+substr($id,9,1);
if(($n3 % 10)!=0) {$qd=$qd."不通過 !n";}
if ($qd=="") {$flag = true;}
return $flag;
}
// 結束
$identity = $_REQUEST["identity"];
if($identity){
echo $identity;
if(check_identity($identity)){
echo "您的身分證字號<font color=blue></font>沒問題!";
}else{
echo "您的身分證字號<font color=red></font>有問題!";
}
}
?>
<br />程式修改by <a href="http://bluezz.tw">http://bluezz.tw</a>

 
php檔案身分證字號檢查
UTF-8版
fileidentity.php
( 1.83 KB )

留言討論區


↑33441樓  評價:
 標 題  Re:身分證字號檢查php
 暱 稱
 阿倫
時間:2014-11-20 09:14:29 來自:118.171.57.xxx
請問  ggc身分證是A17433****後面四碼能找出來嘛

↑23333樓
 標 題  我也寫了一個
 暱 稱
 seven
時間:2012-10-24 19:54:11 來自:36.224.56.xxx
/**
身分證檢查函數
返回:boolean
/**/
Function Is_cod($id) {
$id=strtoupper($id);
IF(StrLen($id)!=10) {Return False;}

IF(!In_Array(SubStr($id,1,1),Array(1,2))) {Return False;}

$n2=0;
For($i=1;$i<10;$i++) {
IF($i<9) {
$n2+=(SubStr($id,$i,1))*(9-$i);
}
$ds=Ord(SubStr($id,$i,1));
IF($ds>57 Or $ds<48) {Return False;}//第二到十碼有問題
}Unset($ds);

$d1=SubStr($id,0,1);
$num=Array('A'=>'10','B'=>'11','C'=>'12','D'=>'13','E'=>'14','F'=>'15','G'=>'16','H'=>'17','J'=>'18','K'=>'19','L'=>'20','M'=>'21','N'=>'22','P'=>'23','Q'=>'24','R'=>'25','S'=>'26','T'=>'27','U'=>'28','V'=>'29','X'=>'30','Y'=>'31','W'=>'32','Z'=>'33','I'=>'34','O'=>'35');
$n1=SubStr($num[$d1],0,1)+(SubStr($num[$d1],1,1)*9);
IF((($n1+$n2+SubStr($id,9,1)) % 10)!=0) {Return False;}
Unset($id,$num,$d1,$n2,$n1);
Return True;
}
IF(Is_cod('A140560624')){Echo '您的身分證字號正確!';}

↑10018樓
 標 題  Re:身分證字號檢查php
 暱 稱
 小傑
時間:2010-08-22 22:44:38 來自:59.125.240.xxx
D221******

後面六碼忘記了 .

可以查嗎 ?

即時:a087552865

我會感激不盡   > /// <

↑9168樓
 標 題  Re:身分證字號查詢
 暱 稱
 
時間:2010-05-26 20:50:44 來自:123.204.138.xxx
請問U12158xxxx
後面四碼忘記的怎麼辦><?

請問可以幫我查嗎><?

我的即時:s7832382115@yahoo.com.tw

↑8061樓
 標 題  Re:身分證字號檢查php
 暱 稱
 笨笨
時間:2010-02-02 10:47:20 來自:122.146.138.xxx
請大大幫我查深份證A140560624
就這幾個組期來的深復證
140後面我就忘了
24
06
56
幫我找找
拜託
找到時就即給我向象
t40300@yahoo.com.tw
卸卸

觀看更多留言

標 題   ※必填
暱 稱  ※必填
E-Mail  
評 價  非常好普通非常差
內 容  
 確認碼  
 更換一組認證碼 ※必填不分大小寫