function IP($ip = '', $file = 'UTFWry.dat') { import("@.ORG.IpLocation"); $iplocation = new IpLocation($file); $location = $iplocation->getlocation($ip); return $location; }
public function index() { echo $_POST['keyword']; //搜索 if (!empty($_GET['keyword'])) { if ($_GET['searchtype'] == 'uid') { $condition_user['uid'] = $_GET['keyword']; } else { if ($_GET['searchtype'] == 'nickname') { $condition_user['nickname'] = array('like', '%' . $_GET['keyword'] . '%'); } else { if ($_GET['searchtype'] == 'phone') { $condition_user['phone'] = array('like', '%' . $_GET['keyword'] . '%'); } } } } $database_user = D('User'); $count_user = $database_user->where($condition_user)->count(); import('@.ORG.system_page'); $p = new Page($count_user, 15); $user_list = $database_user->field(true)->where($condition_user)->order('`uid` DESC')->limit($p->firstRow . ',' . $p->listRows)->select(); if (!empty($user_list)) { import('ORG.Net.IpLocation'); $IpLocation = new IpLocation(); foreach ($user_list as &$value) { $last_location = $IpLocation->getlocation(long2ip($value['last_ip'])); $value['last_ip_txt'] = iconv('GBK', 'UTF-8', $last_location['country']); } } $this->assign('user_list', $user_list); $pagebar = $p->show(); $this->assign('pagebar', $pagebar); $this->display(); }
public static function load() { global $app; //IP判断===================================== $onlineip = getIP(); $ipCity = new IpLocation(INCLUDE_DIR . 'ipdata/QQWry.Dat'); $uCity = $ipCity->getlocation($onlineip); try { if (strcmp(trim($uCity['country']), '北京市') != 0) { throw new Exception('对不起您的IP不符合要求'); } } catch (Exception $e) { $app->error($e->getMessage(), SITE_URL); } //=========================================== if (isset($_SESSION[self::SESSION_KEY]) && isset($_SESSION[self::SESSION_KEY]['username'])) { if (isset($_SESSION[self::SESSION_KEY]['record'])) { $user = $_SESSION[self::SESSION_KEY]['record']; } else { $user = new User('username', $_SESSION[self::SESSION_KEY]['username']); } } else { if (isset($_COOKIE[self::COOKIE_KEY])) { $user = self::checkCookie($_COOKIE[self::COOKIE_KEY]); } else { return false; } } if (!$user) { return self::logout(); } self::setInfos($user); return true; }
/** * Get the city data * * @param object $event the event object * @param string $ipAddress the ip address * @return array the details requested */ public function onGetCity($event, $ipAddress = null) { $IpLocation = new IpLocation(); $return = $IpLocation->getCityData($ipAddress); unset($IpLocation); return $return; }
public function ip() { import('ORG.Net.IpLocation'); // 导入IpLocation类 $Ip = new IpLocation(); // 实例化类 $location = $Ip->getlocation('218.79.93.194'); // 获取某个IP地址所在的位置 $area = $Ip->getlocation(); dump($area); }
function IP($ip = '', $file = 'UTFWry.dat') { $_ip = array(); if (isset($_ip[$ip])) { return $_ip[$ip]; } else { import("ORG.Net.IpLocation"); $iplocation = new IpLocation($file); $location = $iplocation->getlocation($ip); $_ip[$ip] = $location['country'] . $location['area']; } return $_ip[$ip]; }
public function insert(){ $username = $this->_post('username'); $password = $this->_post('password','md5'); if(empty($username)||empty($password)){ $this->error('请输入帐号密码',U('Admin/index')); } $code=$this->_post('code','intval,md5',0); if($code != $_SESSION['verify']){ $this->error('验证码错误',U('Admin/index')); } //生成认证条件 $map = array(); // 支持使用绑定帐号登录 $map['username'] = $username; $map['status'] = 1; $authInfo = RBAC::authenticate($map,'User'); //exit; //使用用户名、密码和状态的方式进行认证 if($authInfo['password']!=$password)$this->error('账号密码不匹配,请认真填写'); if((false == $authInfo)) { $this->error('帐号不存在或已禁用!'); }else { session(C('USER_AUTH_KEY'), $authInfo['id']); session('userid',$authInfo['id']); //用户ID session('username',$authInfo['username']); //用户名 session('roleid',$authInfo['role']); //角色ID if($authInfo['username']==C('SPECIAL_USER')) { session(C('ADMIN_AUTH_KEY'), true); } //保存登录信息 $User = M('User'); $ip = get_client_ip(); $data = array(); if($ip){ //如果获取到客户端IP,则获取其物理位置 $Ip = new IpLocation(); // 实例化类 $location = $Ip->getlocation($ip); // 获取某个IP地址所在的位置 $data['last_location'] = ''; if($location['country'] && $location['country']!='CZ88.NET') $data['last_location'].=$location['country']; if($location['area'] && $location['area']!='CZ88.NET') $data['last_location'].=' '.$location['area']; } $data['id'] = $authInfo['id']; $data['last_login_time'] = time(); $data['last_login_ip'] = get_client_ip(); $User->save($data); // 缓存访问权限 RBAC::saveAccessList(); redirect(U('System/index')); } }
public function info() { $hits = D('Group')->get_hits_log($this->merchant_session['mer_id']); if (!empty($hits)) { import('ORG.Net.IpLocation'); $IpLocation = new IpLocation(); foreach ($hits['group_list'] as &$hit) { $last_location = $IpLocation->getlocation($hit['ip']); $hit['ip_txt'] = iconv('GBK', 'UTF-8', $last_location['country']); } } $this->assign('hits', $hits['group_list']); $this->assign('pagebar', $hits['pagebar']); $this->display(); }
public function check() { $verify = $this->_post('verify'); if (md5($verify) != $_SESSION['admin_verify']) { exit('-1'); } $database_admin = D('Admin'); $condition_admin['account'] = $this->_post('account'); $condition_admin['status'] = 1; $now_admin = $database_admin->field(true)->where($condition_admin)->find(); if (empty($now_admin)) { exit('-2'); } $pwd = $this->_post('pwd', 'htmlspecialchars,md5'); if ($pwd != $now_admin['pwd']) { exit('-3'); } if ($now_admin['status'] != 1) { exit('-4'); } $now_admin['show_account'] = '超级管理员'; if ($now_admin['level'] == 1) { if ($now_admin['area_id']) { $area = D('Area')->field(true)->where(array('area_id' => $now_admin['area_id']))->find(); $now_admin['show_account'] = $area['area_name'] . '管理员'; } } else { $now_admin['show_account'] = '普通管理员'; } $data_admin['id'] = $now_admin['id']; $data_admin['last_ip'] = get_client_ip(1); $data_admin['last_time'] = $_SERVER['REQUEST_TIME']; $data_admin['login_count'] = $now_admin['login_count'] + 1; if ($database_admin->data($data_admin)->save()) { $now_admin['login_count'] += 1; if (!empty($now_admin['last_ip'])) { import('ORG.Net.IpLocation'); $IpLocation = new IpLocation(); $last_location = $IpLocation->getlocation(long2ip($now_admin['last_ip'])); $now_admin['last']['country'] = iconv('GBK', 'UTF-8', $last_location['country']); $now_admin['last']['area'] = iconv('GBK', 'UTF-8', $last_location['area']); } session('system', $now_admin); exit('1'); } else { exit('-5'); } }
/** * 构造函数,打开 QQWry.Dat 文件并初始化类中的信息 * * @param string $filename * @return IpLocation */ public static function getInstance() { if (!self::$instance instanceof self) { self::$instance = new self(); } return self::$instance; }
public function action_user_control__() { $ids = $this->request->query('ids'); $json = array(); if (!is_array($ids)) { return $this->jsonp($json); } $ids = array_unique($ids); foreach ($ids as $id) { if (!is_numeric($id)) { continue; } $json[$id] = CacheManager::getUser($id); if (!$json[$id]) { continue; } unset($json[$id]->password, $json[$id]->user_salt); $json[$id]->regip = IpLocation::getAddressByIP($json[$id]->reg_ip); $json[$id]->reg_date = date('Y-m-d H:i:s', $json[$id]->reg_date); $json[$id]->loginip = empty($json[$id]->login_ip) ? '' : IpLocation::getAddressByIP($json[$id]->login_ip); $json[$id]->login_date = $json[$id]->login_date == 0 ? '' : date('Y-m-d H:i:s', $json[$id]->login_date); $json[$id]->avatar = Util::getAvatar($json[$id]->avatar); } return $this->jsonp($json); }
public function check() { if ($this->isAjax()) { if (md5($_POST['verify']) != $_SESSION['merchant_login_verify']) { exit(json_encode(array('error' => '1', 'msg' => '验证码不正确!', 'dom_id' => 'verify'))); } $database_merchant = D('Merchant'); $condition_merchant['account'] = $_POST['account']; $now_merchant = $database_merchant->field(true)->where($condition_merchant)->find(); if (empty($now_merchant)) { exit(json_encode(array('error' => '2', 'msg' => '用户名不存在!', 'dom_id' => 'account'))); } $pwd = md5($_POST['pwd']); if ($pwd != $now_merchant['pwd']) { exit(json_encode(array('error' => '3', 'msg' => '密码错误!', 'dom_id' => 'pwd'))); } if ($now_merchant['status'] == 0) { exit(json_encode(array('error' => '4', 'msg' => '您被禁止登录!请联系工作人员获得详细帮助。', 'dom_id' => 'account'))); } else { if ($now_merchant['status'] == 2) { exit(json_encode(array('error' => '5', 'msg' => '您的帐号正在审核中,请耐心等待或联系工作人员审核。', 'dom_id' => 'account'))); } } $data_merchant['mer_id'] = $now_merchant['mer_id']; $data_merchant['last_ip'] = get_client_ip(1); $data_merchant['last_time'] = $_SERVER['REQUEST_TIME']; $data_merchant['login_count'] = $now_merchant['login_count'] + 1; if ($database_merchant->data($data_merchant)->save()) { $now_merchant['login_count'] += 1; if (!empty($now_merchant['last_ip'])) { import('ORG.Net.IpLocation'); $IpLocation = new IpLocation(); $last_location = $IpLocation->getlocation(long2ip($now_merchant['last_ip'])); $now_merchant['last']['country'] = iconv('GBK', 'UTF-8', $last_location['country']); $now_merchant['last']['area'] = iconv('GBK', 'UTF-8', $last_location['area']); } session('merchant', $now_merchant); exit(json_encode(array('error' => '0', 'msg' => '登录成功,现在跳转~', 'dom_id' => 'account'))); } else { exit(json_encode(array('error' => '6', 'msg' => '登录信息保存失败,请重试!', 'dom_id' => 'account'))); } } else { exit('deney Access !'); } }
public function login() { if ($this->isAjax()) { $database_merchant = D('Merchant'); $condition_merchant['account'] = trim($_POST['account']); $now_merchant = $database_merchant->field(true)->where($condition_merchant)->find(); if (empty($now_merchant)) { exit(json_encode(array('error' => '2', 'msg' => '用户名不存在!', 'dom_id' => 'account'))); } $pwd = md5(trim($_POST['pwd'])); if ($pwd != $now_merchant['pwd']) { exit(json_encode(array('error' => '3', 'msg' => '密码错误!', 'dom_id' => 'pwd'))); } if ($now_merchant['status'] == 0) { exit(json_encode(array('error' => '4', 'msg' => '您被禁止登录!请联系工作人员获得详细帮助。', 'dom_id' => 'account'))); } else { if ($now_merchant['status'] == 2) { exit(json_encode(array('error' => '5', 'msg' => '您的帐号正在审核中,请耐心等待或联系工作人员审核。', 'dom_id' => 'account'))); } } $data_merchant['mer_id'] = $now_merchant['mer_id']; $data_merchant['last_ip'] = get_client_ip(1); $data_merchant['last_time'] = $_SERVER['REQUEST_TIME']; $data_merchant['login_count'] = $now_merchant['login_count'] + 1; if ($database_merchant->data($data_merchant)->save()) { $now_merchant['login_count'] += 1; if (!empty($now_merchant['last_ip'])) { import('ORG.Net.IpLocation'); $IpLocation = new IpLocation(); $last_location = $IpLocation->getlocation(long2ip($now_merchant['last_ip'])); $now_merchant['last']['country'] = iconv('GBK', 'UTF-8', $last_location['country']); $now_merchant['last']['area'] = iconv('GBK', 'UTF-8', $last_location['area']); } session('merchant_session', $now_merchant); exit(json_encode(array('error' => '0', 'msg' => '登录成功,现在跳转~', 'dom_id' => 'account'))); } else { exit(json_encode(array('error' => '6', 'msg' => '登录信息保存失败,请重试!', 'dom_id' => 'account'))); } } else { $referer = isset($_GET['referer']) ? htmlspecialchars_decode(urldecode($_GET['referer']), ENT_QUOTES) : ''; $this->assign('refererUrl', $referer); $this->display(); } }
public static function getAddressByIP($ip) { if (!$ip) { return "未知"; } if (!IpLocation::$ipl) { IpLocation::$ipl = new IpLocation(DOCROOT . 'application/classes/ip/QQWry.Dat'); } $address = IpLocation::$ipl->getaddress($ip); return mb_convert_encoding($address["area1"] . $address["area2"], 'utf-8', 'GB2312'); }
public function index() { import('ORG.Net.IpLocation'); // 导入IpLocation类 $Ip = new IpLocation(); // 实例化类 $name = $this->getActionName(); $message = D($name); $ary_get['pageall'] = $this->_get('pageall', 'htmlspecialchars', 10); $count = $message->where()->count(); $obj_page = $this->_Page($count, $ary_get['pageall']); $page = $obj_page->newshow(); $ary_data = $message->where()->limit($obj_page->firstRow, $obj_page->listRows)->select(); if (!empty($ary_data) && is_array($ary_data)) { foreach ($ary_data as $k => $v) { $ary_data[$k]['ip_location'] = $Ip->getlocation($v['log_ip']); } } $this->assign("data", $ary_data); $this->assign("page", $page); $this->assign("filter", $ary_get); $this->display(); }
protected function _initialize() { //定义是前台 define('IN_ADMIN', false); parent::_initialize(); //前台关闭表单令牌 C("TOKEN_ON", false); $this->initUser(); $user = session("user"); $this->assign('member_user', $user); //模块静态资源目录,例如CSS JS等 $this->assign('model_extresdir', CONFIG_SITEURL_MODEL . MODEL_EXTRESDIR); import('ORG.Util.IpLocation'); // 导入IpLocation类 $Ip = new IpLocation('UTFWry.dat'); // 实例化类 参数表示IP地址库文件 $area = $Ip->getlocation(); // 获取某个IP地址所在的位置 $country = $area['country']; //获取到的城市 $where['name'] = array('like', $country . '%'); $citylist = M("City")->where($where)->find(); $chengshiid = $_COOKIE['chengshi_id']; //获取cookie 城市 if (empty($chengshiid) && empty($citylist)) { $this->assign("chengshikey", 1); } else { $this->assign("dingcountry", $citylist['name']); } if (empty($chengshiid)) { thinkcookie_cookie('chengshi_id', $citylist['id']); $this->assign("country", $citylist['name']); } else { $citylist = M("City")->where(array('id' => $chengshiid))->find(); $this->assign("country", $citylist['name']); } }
public function index() { if (GetSettValue("ipblock_lang") == 1 && substr_count($_SERVER["HTTP_ACCEPT_LANGUAGE"], 'zh-cn') > 0) { $this->redirect('Ipblock/login'); } $ipLocatoin = IpLocation::getInstance(); $result = $ipLocatoin->init($this->ipdatafile)->getcity($ipLocatoin->get_client_ip()); $address = $result['country'] . $result['area']; $ip = $result['ip']; $city = GetSettValue("ipblock_city"); $cityinfo = unserialize($city); //$cityinfo[]='本机地址'; foreach ($cityinfo as $k => $v) { if (substr_count($address, $v) > 0 || substr_count($ip, $v) > 0) { $this->redirect('Ipblock/login'); } } setcookie("ipblock", 0, time() + 3600 * 6, "/"); //不在范围 }
function getaddress($ip, $area = false) { include_once ONEZ_ROOT . "./include/ip.class.php"; $p = new IpLocation(); $l = $p->getlocation($ip); //print_r($l); $address = $l['country']; if ($area) { $address .= $l['area']; } return $address; }
function GetArea($ipdzcs) { htmlentities($ipdzcs, ENT_NOQUOTES); global $location; //全局变量 global $zsip; global $czipxx; //纯真ip信息 global $ipip; if (strpos($ipdzcs, "*")) { //判断ip地址中是否包含“*”,包含就替换成0,不包含直接使用 $ipdz = str_replace("*", "0", $ipdzcs); } else { $ipdz = $ipdzcs; } $ipdz = trim("{$ipdz}"); //去除ip地址中空格 $iplocation = new IpLocation(); $location = $iplocation->getlocation($ipdz); //将纯真数据库的ip地址拿出来经过ip138去查询 if ($location == 1) { $Area[1][1] = "您输入的" . '"' . $ipdz . '"' . "地址格式有误,请核对后重新输入"; //参考数据1 $Area[1][2] = "您输入的" . '"' . $ipdz . '"' . "地址格式有误,请核对后重新输入"; //参考数据2 $czipxx = "您输入的" . '"' . $ipdz . '"' . "地址格式有误,请核对后重新输入"; $ipip[0] = "您输入的" . '"' . $ipdz . '"' . "地址格式有误,请核对后重新输入"; } else { $zsip = $location[ip]; $czipxx = $location[country] . $location[area]; //直接将纯真数据库数据返回给“本站数据”内容 $czipxx = iconv('GB2312', 'UTF-8//IGNORE', $czipxx); $ch = curl_init(); $url = "http://www.ip138.com/ips1388.asp?ip=" . $zsip . "&action=2"; $timeout = 60; curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_TIMEOUT, $timeout); $contents = curl_exec($ch); $contents = iconv('GB2312', 'UTF-8//IGNORE', $contents); $httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($httpcode != 200) { $Area[1][1] = $czipxx; //参考数据1 $Area[1][2] = $czipxx; //参考数据2 $Area[1][3] = "您查询的IP: {$zsip}"; } else { preg_match_all('|<li>本站主数据:.*</li>|', $contents, $rsR); $rsR[0][0] = str_replace("<li>本站主数据:", "", $rsR[0][0]); preg_match_all('|<li>参考数据一:.*</li>|', $contents, $rsB); $rsB[0][0] = str_replace("<li>参考数据一:", "", $rsB[0][0]); //preg_match_all('|<h1>.*</h1>|',$contents,$rsC); $pos = strpos($rsR[0][0], '</li>'); $pos1 = strpos($rsB[0][0], '</li>'); $Area[1][1] = substr_replace($rsR[0][0], '', $pos); //参考数据1 $Area[1][2] = substr_replace($rsB[0][0], '', $pos1); //参考数据2 $Area[1][3] = "您查询的IP: {$zsip}"; //$Area[1][3] = $rsC[0][0]; } //调用ipip.net数据 $ch = curl_init(); $urlipip = "http://freeapi.ipip.net/" . $zsip; $timeout = 60; curl_setopt($ch, CURLOPT_URL, $urlipip); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_TIMEOUT, $timeout); $ipip = curl_exec($ch); $httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if ($httpcode != 200) { $ipip = array('0' => $Area[1][1]); } else { $ipip = json_decode($ipip, true); } } return $Area; }
/** * IP转换成地区 */ function ip2area($ip = "") { if (strlen($ip) < 6) { return; } import("ORG.Net.IpLocation"); $Ip = new IpLocation("CoralWry.dat"); $area = $Ip->getlocation($ip); $area = auto_charset($area); if ($area['country']) { $res = $area['country']; } if ($area['area']) { $res = $res . "(" . $area['area'] . ")"; } if (empty($res)) { $res = "未知"; } return $res; }
function ipfrom($myip){ require_once C('PUBLIC_INCLUDE')."qqwry.class.php"; $ip = new IpLocation; $datas = $ip->getlocation($myip); $pv = $datas['province']; $city = $datas['city']; return iconv("GBK", "UTF-8",$pv.'/'.$city); }
public static function ip2location($ip) { $ipClass = new IpLocation(); $location = $ipClass->getlocation($ip); return $location; }
<?php $debug = true; require_once './oj-header.php'; require_once './include/iplocation.php'; $users = $on->getAll(); $ip = new IpLocation(); ?> <h3>current online user: <?php echo $on->get_num(); ?> </h3> <table style="margin:auto;width:98%"> <thead> <tr><th style="width: 50px">ip</th><th>uri</th><th>refer</th><th style="width:100px">stay time</th><th>user agent</th></tr> </thead> <tbody> <?php foreach ($users as $u) { ?> <tr><td class="ip"><?php $l = $ip->getlocation($u->ip); echo $u->ip . '<br />'; echo $l['area'] . '@' . $l['country']; ?> </td><td><?php echo $u->uri; ?> </td><td><?php echo $u->refer; ?>
public function around_adress() { if (isset($_GET["long"]) && isset($_GET["lat"])) { $map_center = "new BMap.Point(" . $_GET["long"] . "," . $_GET["lat"] . ")"; } else { import("ORG.Net.IpLocation"); $IpLocation = new IpLocation(); $last_location = $IpLocation->getlocation(); $map_center = "\"" . iconv("GBK", "UTF-8", $last_location["country"]) . "\""; } $this->assign("map_center", $map_center); $this->display(); }
private function convertPartList($tmp_part_list) { $part_list = array(); import('ORG.Net.IpLocation'); $IpLocation = new IpLocation(); foreach ($tmp_part_list as $value) { $value['ip'] = long2ip($value['ip']); $last_location = $IpLocation->getlocation($value['ip']); $value['ip_txt'] = iconv('GBK', 'UTF-8', $last_location['country']); // $value['ip_txt'] = iconv('GBK','UTF-8',$last_location['area']); $arrKey = date('Y-m-d', $value['time']); if (empty($part_list[$arrKey])) { $part_list[$arrKey] = array(); } array_push($part_list[$arrKey], $value); } return $part_list; }
public static function getQQWryData($ip) { $city = array('country' => IpLocation::getAddressByIP($ip), 'region' => '', 'city' => '', 'county' => ''); return $address; }
<?php } ?> </td> <td class="pl5"><?php echo $user->reg_ip; ?> (<?php echo IpLocation::getAddressByIP($user->reg_ip); ?> )</td> <td class="pl5"><?php echo $user->login_ip; ?> (<?php echo IpLocation::getAddressByIP($user->login_ip); ?> )</td> </tr> <?php } ?> </table> <div class="pager t_l"></div> </div> </div> <script type="text/javascript"> happi.pro.admin.pageLoad(false); $("#btnSearch").click(function () { top.tab.refresh();
/** * 管理员登陆日志 * @author Terry<*****@*****.**> * @date 2013-3-29 */ public function pageLogList() { $ary_get = $this->_get(); $ary_get['pageall'] = $this->_get('pageall', 'htmlspecialchars', 10); $adminlog = M("AdminLog"); import('ORG.Net.IpLocation'); // 导入IpLocation类 $Ip = new IpLocation(); // 实例化类 $count = $adminlog->where()->count(); $obj_page = $this->_Page($count, $ary_get['pageall']); $page = $obj_page->newshow(); $ary_data = $adminlog->where()->limit($obj_page->firstRow, $obj_page->listRows)->order('log_create desc')->select(); if (!empty($ary_data) && is_array($ary_data)) { foreach ($ary_data as $k => $v) { $ary_data[$k]['ip_location'] = $Ip->getlocation($v['log_ip']); } } $this->assign("data", $ary_data); $this->assign("filter", $ary_get); $this->assign("page", $page); $this->display(); }
/** * @todo 查询操作日志 * @param array $map 目前只支持用户id的查询. */ public function logList($map = array()) { $db = Db::getInstance(C('RBAC_DB_DSN')); $member_table_name = C('OPERATION_MEMBER'); $operation_table_name = C('DB_PREFIX') . 'msj_operation_log'; $member_id = implode(',', $map); $sql = "(SELECT\r\n\t\tmsj_operation_log.operation_log AS operation_log,\r\n\t\tmsj_operation_log.operation_uid AS operation_uid,\r\n\t\tmsj_operation_log.operation_node AS operation_node,\r\n\t\tmsj_operation_log.operation_ip AS operation_ip,\r\n\t\tmsj_operation_log.operation_time AS operation_time,\r\n\t\tMember.member_name AS member_name\r\n\t\tFROM\r\n\t\t{$operation_table_name} msj_operation_log\r\n\t\tJOIN {$member_table_name} Member\r\n\t\tON msj_operation_log.operation_uid = Member.member_id\r\n\t\tWHERE (`member_id` IN('{$member_id}')))"; $log_list = $db->query($sql); $Ip = new IpLocation(); // 实例化类 $ip_info = $Ip->getlocation($this->getClientIp()); // 获取某个IP地址所在的位置 if (!empty($log_list)) { foreach ($log_list as $key => $val) { $log_list[$key]['operation_time'] = date('Y-m-d H:i:s', $val['operation_time']); $info = unserialize($val['operation_ip']); $log_list[$key]['operation_ip'] = "地区:" . $info['area'] . ',城市:' . $info['country'] . ',IP:' . $info['ip']; } return $log_list; } else { return false; } }
} elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')) { $onlineip = getenv('REMOTE_ADDR'); } elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')) { $onlineip = $_SERVER['REMOTE_ADDR']; } */ $onlineip = getIP(); $onlineip = preg_replace("/^([\\d\\.]+).*/", "\\1", $onlineip); //echo $onlineip; // 以上为获取IP //$onlineip="58.244.35.16"; $onlineip0 = strtoint($onlineip); $x = " 您的IP段不在规定范围内!"; $ips = @file("ip.txt"); //打开ip文件 $j = @count($ips); for ($i = 0; $i < $j; $i++) { $starstr = @explode("-", $ips[$i]); //if($starstr[0]<=$onlineip and $onlineip>=$starstr[1]){ $a = strtoint($starstr[0]); $b = strtoint($starstr[1]); //if (strcmp($onlineip,$a) >= 0 && strcmp($onlineip,$b) <= 0){ if ($onlineip0 >= $a && $onlineip0 <= $b) { $x = "您的IP段在规定范围内!<br />" . $starstr[0] . "<=" . $onlineip . "<=" . $starstr[1] . "<br />"; break; } } echo $x . "<br>" . $onlineip; $ipCity = new IpLocation('include/ipdata/QQWry.Dat'); $uCity = $ipCity->getlocation($onlineip); var_dump($uCity);