国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > PHP > 正文

PHP手機(jī)號歸屬地查詢程序代碼

2024-05-04 21:48:37
字體:
供稿:網(wǎng)友

本文章總結(jié)了兩個常用的手機(jī)歸屬地查詢程序,一種是利用api調(diào)用第三方接口實(shí)現(xiàn),一種是利用我們自己的手機(jī)數(shù)據(jù)庫查詢?nèi)缓笤倥袛嗍謾C(jī)號歸屬地查詢.

先來看一個調(diào)用第三方法網(wǎng)站的一個程序,主要使用curl實(shí)現(xiàn),需要開啟php對curl的支持,如果你是windows系統(tǒng)在你的的php.ini文件的設(shè)置,找到php_curl.dll,并取消前面的分號注釋就行了,如下所示:

取消下面的注釋 extension=php_curl.dll

如果您是在Linux下面,那么,您需要重新編譯您的PHP了,編輯時,您需要打開編譯參數(shù),在configure命令上加上“–with-curl”參數(shù).

然后重啟apache,代碼如下:

  1. <?php 
  2. header("Content-Type:text/html;charset=utf-8"); 
  3. if (isset($_GET['number'])) { 
  4. $url = 'http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo'
  5. $number = $_GET['number']; 
  6. $ch = curl_init(); 
  7. curl_setopt($ch, CURLOPT_URL, $url); 
  8. curl_setopt($ch, CURLOPT_POST, true); 
  9. curl_setopt($ch, CURLOPT_POSTFIELDS, "mobileCode={$number}&userId="); 
  10. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
  11. $data = curl_exec($ch); 
  12. curl_close($ch); 
  13. $data = simplexml_load_string($data); 
  14. if (strpos($data'http://')) { 
  15. echo '手機(jī)號碼格式錯誤!'
  16. else {//開源代碼Vevb.com 
  17. echo $data
  18. ?> 
  19. <form action="mobile.php" method="get"
  20. 手機(jī)號碼: <input type="text" name="number" /> <input type="submit" value="提交" /> 
  21. </form> 

實(shí)例二:這個實(shí)例利用了手機(jī)數(shù)據(jù)庫,把文件保存在本地然后查找數(shù)據(jù)庫再來差別,但是你得經(jīng)常更新數(shù)據(jù)庫才行,代碼如下:

  1. <html> 
  2. <head> 
  3. <title>手機(jī)號碼歸屬地查詢</title> 
  4. </head> 
  5. <style type="text/css"
  6.  #main{ 
  7.  height:100%; 
  8.  } 
  9.  #left { 
  10.  float:left; 
  11.  height:100%; 
  12.  width:10%; 
  13.  float:left; 
  14.  } 
  15.  #right{ 
  16.  float:left; 
  17.  height:100%; 
  18.  width:100$; 
  19.  } 
  20. </style> 
  21. <body> 
  22. <?php 
  23. require ('function.php'); 
  24. $pwd="xiaolin"//密碼,請修改 
  25. if (!isset($_GET["action"]) ){ 
  26. header("Location:manage.php?action=login"); 
  27.  
  28. if ($_GET["action"]=="login"){ 
  29.  
  30. ?> 
  31. <form action="manage.php?action=loginin" method="POST"
  32. <p>請輸入密碼:</p> 
  33. <p><input type="password" value="" name="pwd"></p> 
  34. <p><input type="submit" value="登錄"></p> 
  35. </form>  
  36. <?php 
  37. }elseif ($_GET["action"]=="loginin"){ 
  38.  $repwd=$_POST["pwd"]; 
  39.  if ($repwd != $pwd){ 
  40.  echo "Sorry,密碼錯誤~!"
  41.  }else { 
  42.  $_SESSION["flag"]=true; 
  43.  leftnav(); 
  44.  } 
  45.  
  46. }elseif ($_GET["action"]== "info" ){ 
  47.  leftnav(); 
  48.  getinfo(); 
  49. ?> 
  50. </div> 
  51.  </div>  
  52. <?php 
  53. }elseif ($_GET["action"]=="edit"){ 
  54. leftnav(); 
  55. ?> 
  56. <form action="manage.php?action=editp" method="POST"
  57. <p>手機(jī)號碼:<input type="text" name="num">(至少7位)</p> 
  58. <p>詳細(xì)資料:<input type="text" name="info"></p> 
  59. <input type="submit" value="更新"
  60. </form>  
  61.  
  62. <?php 
  63.  
  64. }elseif ($_GET["action"]== "loginout"){ 
  65.  if (isset($_SESSION["flag"])){ 
  66.  unset($_SESSION["flag"]); 
  67.  session_destroy(); 
  68.  } 
  69.  echo "<p><a>登出</a></p><p><a href='manage.php'>返回</a></p>"
  70.  
  71.  
  72. }elseif ($_GET["action"]=="editp"){ 
  73.  leftnav(); 
  74.  $num=$_POST["num"]; 
  75.  $info=$_POST['info']; 
  76.  if (!emptyempty($num) && !emptyempty($info) && strlen($num)>=7 ){ 
  77.  update($num,$info); 
  78.  }else
  79.  die ("不得為空!"); 
  80.  } 
  81. }elseif ("about"==$_GET["action"]){ 
  82.  leftnav(); 
  83.  showabout(); 
  84.  } 
  85. ?> 
  86. </body> 
  87. </html> 

index.php,代碼如下:

  1. <html> 
  2. <head> 
  3. <title>手機(jī)號碼歸屬地查詢</title> 
  4. </head> 
  5. <body> 
  6. <form action="index.php?action=search" method="POST"
  7. <p>請輸入你要查詢的手機(jī)號碼:<input type="text" name="phone"></p> 
  8. <p><input type="submit" value="查詢手機(jī)號碼歸屬地"></p></p> 
  9. </form> 
  10. <?php 
  11. if (isset($_GET["action"])){ 
  12. if ("search"==$_GET["action"] ){ 
  13. require ('function.php'); 
  14. $phone=(isset($_POST["phone"]))?$_POST["phone"]:die ("請返回"); 
  15. echo "你查詢的手機(jī)號碼<font color=red>".$phone."</font>屬于<font color=red>".getphone($phone)."</font>"
  16. }  
  17. ?> 
  18. </body> 
  19. </html> 

function.php函數(shù),代碼如下:

  1. <?php 
  2.  
  3. session_start(); 
  4.     
  5. function update($num,$info){ 
  6.  $dbpath="xiaolin/"
  7.  $len=strlen($num); 
  8.  if ( $len < 7 ){ 
  9.  return "手機(jī)號碼最低7位哦"
  10.  } 
  11.  $par="[0-9]"
  12.  for ($i=0;$i<$len;$i++){ 
  13.   if(!ereg($par,substr($num,$i,1) ) ){ 
  14.   return "手機(jī)號碼只能為數(shù)字"
  15.   } 
  16.  } 
  17.  $sunum=scandir($dbpath); //得到支持的手機(jī)號碼前綴 
  18.   array_splice($sunum,0,1); //把當(dāng)前目錄取消 
  19.   array_splice($sunum,0,1); //把上一級目錄去掉 
  20.  $sub=substr($num,0,3); //取得該號碼的前三位 
  21.  if (in_array($sub,$sunum) ){ 
  22.    $num1=ltrim(substr($num,3,4),"0"); 
  23.   $search=file($dbpath.$sub); 
  24.   $tmp=$search[$num1]; 
  25.   $search[$num1]=$num1.'='.$info."n"
  26.   $fp1=fopen($dbpath.$sub.'1','wb+'); 
  27. for ($i=0;$i<10000;$i++){ 
  28.  //$phone=str_pad($i,4,"0",STR_PAD_LEFT); 
  29.  //$phoneinfo=""; 
  30.  //$phoneinfo.=$phone."="; 
  31.  //$phoneinfo=(isset($search[$i]))?$search[$i]:""; 
  32.  //$phoneinfo.="n"; 
  33.  fwrite($fp1,$search[$i]); 
  34. fclose($fp1); 
  35.  echo "$num 已更新"
  36.  }else
  37.  die ("暫不支持$sub"); 
  38.  } 
  39.  } 
  40. function getphone($phone){ 
  41.  $dbpath="xiaolin/"
  42.  $len=strlen($phone); 
  43.  if ( $len < 7 ){ 
  44.  return "手機(jī)號碼最低7位哦"
  45.  } 
  46.  $par="[0-9]"
  47.  for ($i=0;$i<$len;$i++){ 
  48.   if(!ereg($par,substr($phone,$i,1) ) ){ 
  49.   return "手機(jī)號碼只能為數(shù)字"
  50.   } 
  51.  } 
  52.  $sunum=scandir($dbpath); //得到支持的手機(jī)號碼前綴 
  53.   array_splice($sunum,0,1); //把當(dāng)前目錄取消 
  54.   array_splice($sunum,0,1); //把上一級目錄去掉 
  55.  $sub=substr($phone,0,3); //取得該號碼的前三位 
  56.  if (in_array($sub,$sunum) ){ 
  57.    $num=ltrim(substr($phone,3,4),"0"); 
  58.   $search=file($dbpath.$sub); 
  59.   $tmp=$search[$num]; 
  60.   $result=substr($tmp,strpos($tmp,"=")+1,strlen($tmp)-strpos($tmp,"=")-2); //處理數(shù)據(jù) 
  61.   return (strlen($result)>1)?$result:"無數(shù)據(jù)"
  62.  }else
  63.  return "暫不支持$sub"
  64.  } 
  65.  
  66. function check(){ 
  67.  if (!isset($_SESSION["flag"]) ){ 
  68.  die ("<p>請<a href='manage.php?action=login'>登錄!</a></p>");  
  69.  }elseif ($_SESSION["flag"] != true){ 
  70.  die ("<p>請<a href='manage.php?action=login'>登錄!</a></p>");  
  71.  } 
  72.  
  73. function getinfo(){ 
  74. check(); 
  75.  $nums=array("130","131","132","133","134","135","136","137","138","139","150","151","153","155","156","157","158","159"); 
  76.  $counts=""
  77.  for($j=0;$j<count($nums);$j++){ 
  78.   $id=$j
  79.   if ($id >= count($nums) ){ die ("OVER"); } 
  80.    $nownum=$nums[$id]; //當(dāng)前的號碼段 
  81.   $dbpath="xiaolin/"
  82.   $fp=fopen("xiaolin/$nownum",'r'); 
  83.   while(!feof($fp)){ 
  84.    $line=fgets($fp); 
  85.    $tmp=explode("=",$line); 
  86.    $num1[$tmp[0]]=substr($line,strpos($line,"=")+1,strlen($line)-strpos($line,"=")-2); 
  87.   } 
  88.   fclose($fp); 
  89.  $flag=0; 
  90.   for($i=0;$i<10000;$i++){ 
  91.    $ser=str_pad($i,4,"0",STR_PAD_LEFT); 
  92.    if(!strlen($num1[$ser]) ==0 ){ 
  93.    ++$flag
  94.   } 
  95.  } 
  96.  $counts+=$flag
  97.   echo "$nownum:段記錄$flag</p>"
  98.  echo "總計$counts";} 
  99.  function leftnav(){ 
  100.   check(); 
  101. ?> 
  102. <div> 
  103.  
  104. <div id="right"
  105.  
  106. <?php 
  107. function showabout(){ 
  108.  echo "<p>手機(jī)號碼歸屬地查詢</p> 
  109. "; 
  110.  } 
  111. ?> 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 湘阴县| 厦门市| 河曲县| 天长市| 贡山| 崇义县| 黄大仙区| 南靖县| 泰顺县| 资源县| 灌南县| 木里| 溧阳市| 汕尾市| 沁水县| 巴中市| 镇雄县| 岳池县| 社旗县| 柳江县| 安阳县| 宝丰县| 天水市| 开封市| 闸北区| 大姚县| 佛冈县| 唐海县| 衡山县| 伊吾县| 信丰县| 东台市| 庐江县| 嘉禾县| 宜丰县| 左云县| 施秉县| 观塘区| 安庆市| 泰宁县| 昌乐县|