public static function singleton() { if (!isset(self::$instance)) { $clsname = __CLASS__; self::$instance = new $clsname(); } return self::$instance; }
function getip_area($ipadd) { import('@.ORG.QQWry'); $qqwry = new QQWry(); $area = $qqwry->location($ipadd); $area[0] = mb_convert_encoding($area[0], 'utf-8', 'GBK'); $area[1] = mb_convert_encoding($area[1], 'utf-8', 'GBK'); return $area; }
<?php error_reporting(0); header("content-Type: text/html; charset=GB2312"); define('IN_SEO', 'IN_SEO'); @(include_once 'qqwry.php'); $action = $_GET['action']; $lurl = $_GET['lurl']; $domain = $_GET['domain']; $QQWry = new QQWry(); function get_real_ip() { $ip = false; if (!empty($_SERVER["HTTP_CLIENT_IP"])) { $ip = $_SERVER["HTTP_CLIENT_IP"]; } if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { $ips = explode(", ", $_SERVER['HTTP_X_FORWARDED_FOR']); if ($ip) { array_unshift($ips, $ip); $ip = FALSE; } for ($i = 0; $i < count($ips); $i++) { if (!eregi("^(10|172\\.16|192\\.168)\\.", $ips[$i])) { $ip = $ips[$i]; break; } } } return $ip; }
/** * @deprecated IP定位 * @param1 * @author dapeng.chen * @return IP * **/ function getip_area($ipadd) { // require_once("./Home/Lib/ORG/IpLocation.class.php"); # 加载充值接口文件 // $classip = new IpLocation('qqwry.dat'); // // $area = $classip->getlocation($ipadd); // //mb_convert_encoding($address['area1'],'utf-8','GBK'); // print_r($area);exit; import('@.ORG.QQWry'); $qqwry = new QQWry(); $area = $qqwry->location($ipadd); $area[0] = mb_convert_encoding($area[0], 'utf-8', 'GBK'); $area[1] = mb_convert_encoding($area[1], 'utf-8', 'GBK'); return $area; }
} //提交新贴 if ($_POST['ac'] == 'reply') { if (!empty($_POST['intro'])) { $intID = intval($_POST['id']); $arrInfo = $objWebInit->getInfo($intID); if ($arrInfo['is_answer'] == 1) { check::AlertExit("错误:此问题已经解决,无法再回复新答案了!", -1); } $strIP = check::getip(); if (!session_is_registered('user_id')) { $arrTemp['user_name'] = $strIP; } else { $arrTemp['user_name'] = $_SESSION['real_name']; } $objQQWry = new QQWry(); $objQQWry->qqwry($strIP); $strZone = iconv('GB2312', 'UTF-8' . '//TRANSLIT', $objQQWry->Country); $arrTemp['zone'] = $strZone; $arrTemp['replydate'] = date('Y-m-d H:i:s'); $arrTemp['intro'] = $_POST['intro']; if (array_key_exists('reply', $arrInfo)) { array_push($arrInfo['reply'], $arrTemp); } else { $arrInfo['reply'][] = $arrTemp; } $arrInfo['longtitle'] = $arrInfo['title']; $arrInfo['replytimes'] += 1; $arrInfo['replydate'] = $arrTemp['replydate']; $objWebInit->saveInfo($arrInfo, 1); } else {
/** * * Get the visitor's head image * @param int $ip * @param array $htmlOptions * @param int $gits */ public function getVisitorHead($ip, $htmlOptions = array(), $title = '', $gits = 50) { // Yii::import('application.helpers.EGeoIP'); // $geoIp = new EGeoIP(); // $geoIp->locate('182.128.111.224'); // use your IP // echo 'Information regarding IP: <b>'.$geoIp->ip.'</b><br/>'; // echo 'City: '.$geoIp->city.'<br>'; // echo 'Region: '.$geoIp->region.'<br>'; // echo 'Area Code: '.$geoIp->areaCode.'<br>'; // echo 'DMA: '.$geoIp->dma.'<br>'; // echo 'Country Code: '.$geoIp->countryCode.'<br>'; // echo 'Country Name: '.$geoIp->countryName.'<br>'; // echo 'Continent Code: '.$geoIp->continentCode.'<br>'; Yii::import('application.components.visitors.QQWry'); $id = ip2long($ip); $qqwry = new QQWry($ip); $id = abs(fmod($id, $gits)); // UtilTools::dump($qqwry); // echo $id; // echo $qqwry->getDetailInfo(); $str = CHtml::link(CHtml::image('/public/images/head/' . $id . '.jpg', $qqwry->getDetailInfo(), $htmlOptions), '#', array('title' => 'IP:' . $ip . ',来自:' . $qqwry->getDetailInfo() . ',' . $title)); // echo $str; return $str; }
<?php /* 通过QQWry获取IP地址等信息 根据参数返回相应的值 */ require 'QQWry.php'; //未获取IP的话,获取客户端IP $IP = @$_GET['ip']; if ($IP == '') { $IP = QQWry::GetIP(); } $info = new QQWry($IP); $return['country'] = $info->Country; $return['local'] = $info->Local; //返回方式 $mode = @$_GET['mode']; if ($mode == '') { $mode = 'txt'; } if ($mode == 'txt') { $strReturn = $info->Country . ' ' . $info->Local; } if ($mode == 'json') { $strReturn = json_encode($return); } if ($mode == 'jstr') { $strReturn = 'var remote_ip_info =' . json_encode($return) . ';'; } if ($mode == 'jsfun') { $strReturn = 'ipcallback(' . json_encode($return) . ');';