웹마스터 팁

행복한고니님의 글
------------------------------------
/*
     국내 Whois에서 해당 IP를 조회하고, 정보를 리턴해주는 클래스
                    만든넘 : 행복한 고니(gonom9@empal.com)
*/

class whoisClass
{
        var $ip;
        var $pattern = "^[[]+( IP 사용 기관 정보 )";
        var $result;

        //IP를 입력하고 결과값(한글) 배열을 반환한다.
        function query_ip($ip){
                $this->ip = $ip;
                $str = @file("http://whois.nic.or.kr/whois/webapisvc/?VALUE=".$this->ip);
                if(!$str) return false;
                $str_num = count($str);

                for($i=0 ; $i<$str_num; $i++){
                        if(eregi("조회하신 IP주소의 사용기관 정보는 아래와 같습니다.", $str[$i]) == 1) $Start_Capture = 13;
                        if($Start_Capture != 0){
                                switch($Start_Capture){
                                        case 11:
                                                $result = explode("-",ereg_replace("IP 주소            : ","",$str[$i]));
                                                $this->result["start_ip"] = $result[0];
                                                $this->result["end_ip"] = $result[1];
                                                break;
                                        case 9:
                                                $this->result["isp"] = ereg_replace("연결 ISP명         : ","",$str[$i]);
                                                break;
                                        case 4:
                                                $this->result["org_id"] = ereg_replace("기관고유번호       : ","",$str[$i]);
                                                break;
                                        case 3:
                                                $this->result["org_name"] = ereg_replace("기관명             : ","",$str[$i]);
                                                break;
                                        case 2:
                                                $this->result["city"] = ereg_replace("시도명             : ","",$str[$i]);
                                                break;
                                        case 1:
                                                $this->result["address"] = ereg_replace("주소               : ","",$str[$i]);
                                }
                                $Start_Capture--;
                        }
                }
                return $this->result;
        }
}

국내 IP자료를 긁어오기 위해서 간단히 만들어본 클래스입니다.
굳이 클래스가 필요없는 함수수준이긴 하지만...
클래스라는 넘을 만들고 싶은 나머지 그만...  T^T
허접이라서 볼 것은 별로 없지만 나중에 지역별 통계가 필요해서 한번 시도명과 주소의 카테고리를 만들어두었습니다(근데 지역명이 꼭 맞아떨어지는 것만은 아니라고 하더군요... 머... 대강의 통계만 내면 되니까 상관은 없지만..).

소스가 좀 지저분한 것 같아서 바꾸고도 싶지만 역시 실력이 문제라...
정규식을 공부하던가 해야지 원...

무단개선 및 건전딴지 적극 환영입니다.
단, 무단개선 후에는 저에게도 지혜를 조금 나누어 주시길... 헤헤헤.... ^^;;
제목 글쓴이 날짜
winamp 방송정보 알아오기 (2005년 새로 코딩한 버전) [8] file 이승원 2005.05.06
winamp 방송정보 읽어오기 심각한 문제해결 file 이승원 2005.05.04
-긴급소스 수정본- winamp 방송정보 알아내기 file 이승원 2004.09.11
주식정보출력코드 [2] 김재경 2004.06.01
[허접팁]윈엠프 리스트창에 방송정보 보여주기;;[수정] [5] file 『처니리♂』 2004.02.29
PHP 확장 함수를 이용한 exif 정보 출력 [1] file NoSoRi 2003.04.30
객체를 이용한 winamp 방송정보 알아내는 소스 [4] 흑심품은연필 2003.04.07
국내 IP정보를 조회하는 클래스 [7] 행복한고니 2003.01.04
제로보드로 유료 사이트 만들기 (결제 정보 저장) [1] 한꼬마 2002.11.06
[추천 팁] 폴더내의 파일중에서 특정정보만 뽑아오기. [2] M2Vis 2002.07.12
cron을 이용해 윈앰프 방송정보를 빠르게 분석. [9] Romeo 2002.01.15
날씨/운세/뉴스/달력/검색등 메인용 귀연 정보박스[미리보기] [12] 뽀因㉦ㅓо Ø Γ 2006.07.19
인코딩 정보 일본어, 중국어, 스페인어 [3] 탐그루 2002.03.16
탈퇴한 회원이 재가입 못하게 막는 방법 & 탈퇴한 회원 정보 보전 방법 [9] sejin7940 2010.09.17
회원 정보 및 회원 리스트에 회원 성별 앞에 아이콘 넣기 [5] file 늘푸른이 2010.08.06
문서 서식에 관한 정보 [4] YO-DA 2010.08.06
검정 배경 홈페이지용 회원 정보 스킨 file LutZ 2010.08.03
회원확장정보 변수 (출처:sMaker) [5] 시니시즘 2010.07.19
xml js filter를 이용한 form 정보 전달 시 disabled="true" 사용 팁 [5] 라르게덴 2010.01.20
제로보드4->XE 데이터 이전 시 회원 정보 오류 / 포인트 문제 [10] 개돌 2009.10.08