IP 조회 소스 > 그누4 팁자료실

그누4 팁자료실

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요.
나누면 즐거움이 커집니다.

IP 조회 소스 정보

IP 조회 소스

본문

지난밤 잠이오지 않아 제 홈페이지 관리자 부분에 몇몇 기능을 업그레이드 시켜봤습니다.
그중 하나 IP 조회부분에 관련한 것인데요...
도움이 되신다면 꼬릿만 남겨주세요...
저뿐 아니라 대부분의 정보제공자는 여러분의 댓글의 힘으로 글을 쓰니까요~ ㅋㅋ

국내 IP라면 해당 통신사와 주소지를 알수 있게 만든 IP추적(?)소스입니다.
모든 적용이 제대로 되었다면 아래 그림과 같이 보일것입니다.
ip_search_3.gif


아래소스에보시면 해당 아이피로 국가를 표시해주는부분이 있는데 그와 관련한 부분은 아래 게시물을 참고하셔서 구현하시면 됩니다.
해당 국가를 구분할수 없다해도 사용상엔 문제가 없습니다.

국가구분없이 사용하고자 한다면
  // (S) IP로 국가코드 가져오기
  ...........
  ...........
  ...........
  // (E) IP로 국가코드 가져오기
청녹색으로 된부분을
주석처리하거나 삭제하시면 됩니다.


<style>
body {margin-top:8px;margin-left:10px;background:#38385E;color:#f8f8f8;line-height:100%;}
</style>

<?
 $ip_num = $REMOTE_ADDR;

  // (S) IP로 국가코드 가져오기
 $ip_number = sprintf("%u", ip2long($ip_num));
 $connect = mysql_connect("localhost","유저아이디","암호") or die("서버 연결 에러입니다.");
 mysql_select_db("iuman") or die("DataBase 연결 에러입니다.");

 $sql = " select * from iptocountry where ip_from <= '$ip_number' AND ip_to >= '$ip_number' ";
 $result = mysql_query($sql);
 while($data=mysql_fetch_array($result)) {
  $country_img  = strtolower($data[country_code2]);
  $country_code  = $data[country_code2];
  $country    = $data[country_name];
  echo "<img src='iuman/img/flag/b/$country_img.png'> $ip_num ($country)";
  echo "  <a onclick='javascript:self.close()' border=1 style='padding:2px 10px 1px 10px;letter-spacing:0.2em;font-size:12px;color:#FFFFFF;font-weight:bold;background:#333333;cursor:pointer;'>창닫기</a><hr>";
 }
  // (E) IP로 국가코드 가져오기
?>

<?
if($country_code =="KR") {

 $domain = $ip_num;
 $fp = fsockopen("whois.krnic.net",43); //ipwhois.nic.or.kr 주소로변경해도됨

 if (!$fp) { echo "whois 접속실패"; exit; }

 fputs ($fp, "$domain"."\n");
 while(!feof($fp)) { $result.=fgets($fp,1024); }
 fclose($fp);
 $result = nl2br($result);

 preg_match_all("/연결 ISP명         : (.+?)<br/i",$result,$match_isp);
 preg_match_all("/기관명             : (.+?)<br/i",$result,$match_office);
 preg_match_all("/주소               : (.+?)<br/i",$result,$match_addr);
 if(!$match_isp[1][0]) { preg_match_all("/서비스명      : (.+?)<br/i",$result,$match_isp); }
 if(!$match_office[1][0]) { preg_match_all("/기 관 명      : (.+?)<br/i",$result,$match_office); }
 if(!$match_addr[1][0]) { preg_match_all("/기관 주소     : (.+?)<br/i",$result,$match_addr); }
 echo "<strong>ISP : ".$match_isp[1][0]."<br>";
 echo "기관명 :".$match_office[1][0]."<br>";
 echo "주소 :".$match_addr[1][0]."</strong><hr>";

 echo "<font style=font-size:9pt>$result</font>";

} else {
 echo "</br>한국내 IP가 아니어서 조회가 불가능합니다.";
}
?>

<hr>
<center><a onclick="javascript:self.close()" border=1 style="padding:4px 10px 4px 10px;letter-spacing:0.2em;font-size:12px;color:#FFFFFF;font-weight:bold;background:#333333;cursor:pointer;">창닫기</a></center>

추천
1
  • 복사

댓글 2개

© SIRSOFT
현재 페이지 제일 처음으로