Phát hiện địa chỉ người dùng với PHP

Danh mục: PHP & MySQL
 

Các bạn sử dụng đoạn script sau sẽ có thể lấy chính xác địa chỉ thành phố mà người dùng truy cập vào website hay blog của các bạn. Tùy theo mục đích sử dụng mà đoạn script này sẽ rất hữu ích cho các bạn.

code Snipppets, php code, thu thuat php, hoc php, php co ban

function detect_city($ip) {

         

        $default = 'UNKNOWN';



        $curlopt_useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)';

         

        $url = 'http://ipinfodb.com/ip_locator.php?ip=' . urlencode($ip);

        $ch = curl_init();

         

        $curl_opt = array(

            CURLOPT_FOLLOWLOCATION  => 1,

            CURLOPT_HEADER      => 0,

            CURLOPT_RETURNTRANSFER  => 1,

            CURLOPT_USERAGENT   => $curlopt_useragent,

            CURLOPT_URL       => $url,

            CURLOPT_TIMEOUT         => 1,

            CURLOPT_REFERER         => 'http://' . $_SERVER['HTTP_HOST'],

        );

         

        curl_setopt_array($ch, $curl_opt);

         

        $content = curl_exec($ch);

         

        if (!is_null($curl_info)) {

            $curl_info = curl_getinfo($ch);

        }

         

        curl_close($ch);

         

        if ( preg_match('{



<li>City : ([^<]*)</li>





}i', $content, $regs) )  {

            $city = $regs[1];

        }

        if ( preg_match('{



<li>State/Province : ([^<]*)</li>





}i', $content, $regs) )  {

            $state = $regs[1];

        }



        if( $city!='' && $state!='' ){

          $location = $city . ', ' . $state;

          return $location;

        }else{

          return $default;

        }

         

    }

Và để sử dụng, các bạn chỉ cần viết thêm đoạn code như sau:

<?php $ip = $_SERVER['REMOTE_ADDR']; $city = detect_city($ip); echo $city; ?>

 

 



BÀI VIẾT KHÁC
CODE GỢI Ý CHO BẠN
BẢN QUYỀN ®
Mọi chia sẻ nội dung thuộc tác quyền của MANGUON.COM phải ghi rõ "Nguồn MANGUON.COM"