不是很好看,有人希望改成可以自动识别匿名网友的 IP 所在位置,来做为 Guest 的替换表示。
例如上面的图片。这就需要用 IP 来找到对应的位置。
我们使用 QQ 自带的显示的 IP 用的数据来解决这个问题。
由于是访问本地文件,所以不占用数据库的资源,而且速度也很快。
一、下载下面的压缩文件
ip.part01.rar
(2008-01-21 13:56:38, Size: 488 KB, Downloads: 2766)
ip.part02.rar
(2008-01-21 13:56:57, Size: 488 KB, Downloads: 2892)
ip.part03.rar
(2008-01-21 13:57:23, Size: 488 KB, Downloads: 2850)
ip.part04.rar
(2008-01-21 13:57:23, Size: 488 KB, Downloads: 626)
ip.part05.rar
(2008-01-21 13:57:47, Size: 249 KB, Downloads: 460)
里面有两个文件:
QQWry.Dat QQ 的 IP 数据包文件
ip.inc.php 一个供外界调用的类文件
将这两个文件放到 include 文件夹下即可。
可以打开 ip.inc.php 文件看看里面都有什么方法供外界使用。
二、修改 viewcomment.php 文件
在文件的开头导入 ip.inc.php 文件
CODE:
include_once(S_ROOT.'./include/ip.inc.php');修改该文件中同位置的代码为下面代码的样子即可。CODE:
$setsqlarr = array(
'itemid' => $itemid,
'type' => 'news',
'uid' => '0',
'authorid' => $_SGLOBAL['supe_uid'],
'author' => $_SGLOBAL['supe_username'] == 'Guest' ? ($_SGLOBAL['onlineip'] == '127.0.0.1' ? '本地 网友' : ip2location($_SGLOBAL['onlineip']).' 网友') : $_SGLOBAL['supe_username'],
'ip' => $_SGLOBAL['onlineip'],
'dateline' => $_SGLOBAL['timestamp'],
'rates' => $_POST['rates'],
'message' => $_POST['message']
);都改好了,很简单吧!还不快去看看效果!
PS: ip.inc.php 文件配合 QQ 的 IP 库文件可以用在任何需要的地方。
[ 本帖最后由 ted1006 于 2008-1-21 13:57 编辑 ]



最新回复
CODE:
$this->local = str_replace("(我们一定要解放台湾!!!)", "", $this->local);这句话指的那部分在哪里修改??
再次学习!