在允许游客进行评论时,评论的标题会显示 “Guest 评论时间……”
不是很好看,有人希望改成可以自动识别匿名网友的 IP 所在位置,来做为 Guest 的替换表示。
例如上面的图片。这就需要用 IP 来找到对应的位置。
我们使用 QQ 自带的显示的 IP 用的数据来解决这个问题。
由于是访问本地文件,所以不占用数据库的资源,而且速度也很快。
一、下载下面的压缩文件
里面有两个文件:
QQWry.Dat QQ 的 IP 数据包文件
ip.inc.php 一个供外界调用的类文件
将这两个文件放到 include 文件夹下即可。
可以打开 ip.inc.php 文件看看里面都有什么方法供外界使用。
二、修改 viewcomment.php 文件
在文件的开头导入 ip.inc.php 文件- include_once(S_ROOT.'./include/ip.inc.php');
复制代码 修改该文件中同位置的代码为下面代码的样子即可。
- $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 编辑 ] |