• 5777阅读
  • 200回复

关于帖子阅读页显示的ip地址来源(SQL 语句) [复制链接] [手机版]

上一主题 下一主题
离线zhangjingyu

只看该作者 138楼 发表于: 2025-12-21 19:50:48 星期日  点亮(0)
后台切换为采用本地数据库文件查询的方式获取ip归属
重新编辑下,后台切换为网络获取方式
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线zhangjingyu

只看该作者 139楼 发表于: 2025-12-21 19:52:29 星期日  点亮(0)
137楼 发表于: 2025-12-21 19:48:15 星期日  点亮(0) 来自:中国山东省聊城市 莘县
138楼 发表于: 2025-12-21 19:50:48 星期日  点亮(0) 来自:中国–山东–聊城 移动
看来回帖部分的文件修改没有问题。
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线zhangjingyu

只看该作者 140楼 发表于: 2025-12-21 19:54:40 星期日  点亮(0)
138楼 发表于: 2025-12-21 19:50:48 星期日  点亮(0) 来自:中国山东省聊城市 莘县
后台切换为采用本地数据库文件查询的方式获取ip归属
重新编辑下,后台切换为网络获取方式

修改帖子没有问题!
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线zhangjingyu

只看该作者 141楼 发表于: 2025-12-21 19:57:57 星期日  点亮(0)
楼主  发表于: 2025-12-21 19:06:29 星期日 来自:中国山东省
楼主  发表于: 2025-12-21 19:06:29 星期日 来自:中国山东省聊城市 莘县
修改主帖也没有问题!
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线zhangjingyu

只看该作者 142楼 发表于: 2025-12-21 20:01:46 星期日  点亮(0)
到此,关于帖子阅读页显示的ip地址来源的修改终于算是完美收官了!
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线zhangjingyu

只看该作者 143楼 发表于: 2025-12-21 20:11:24 星期日  点亮(0)
—— 管理操作 •  zhangjingyu 执行 帖内置顶 操作 (2026-04-01 20:57) ——
1.后台添加“IP归属选择”开关,网络方式为从chinaz.com查询获得地理位置信息,本地方式为从本地数据库文件中查询。

2.在require/common.php文件里添加自定义函数,数据的处理都在这里:
    function getipguishu($onlineip) {//2025.12.21
    $getUrl = 'https://ip.tool.chinaz.com/'.$onlineip;
    $curl = curl_init(); // 初始化curl
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 跳过证书检查
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); // 从证书中检查SSL加密算法是否存在
    curl_setopt($curl, CURLOPT_URL, $getUrl); // 抓取指定网页
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); // curl不直接输出到屏幕
    curl_setopt($curl, CURLOPT_HEADER, 0); // 设置header
    $data = curl_exec($curl); // 运行curl
    curl_close($curl);

    $begin=strpos($data,'items-center');
    $end=$begin+100;
    $str=substr($data,$begin,$end);//截取页面

    $encode = mb_detect_encoding($str, array('ASCII','UTF-8','GB2312','GBK','BIG5'));
    $string =mb_convert_encoding($str,'GBK',$encode);//使用iconv函数转码在空间论坛无效

    $begin2=strpos($string,'ipAddress');
    $end2=$begin2+100;
    $str2=substr($string,$begin2,$end2);//再次截取页面
    $str3=explode('>',$str2);
    $str4=explode('<',trim($str3[1]));
    $wulidizhi=trim($str4[0]);
    $guishu=str_replace('-','',$wulidizhi);
        return $guishu;
}

3.修改文件
lib/forum/topicpost.class.php pw_tmsgs
lib/forum/replypost.class.php pw_posts
lib/forum/postmodify.class.php pw_posts

(1)添加变量:global $db_cvtime, $db_ptable, $onlineip, $db_plist,$db_ipguishu;
(2)获取数据:$guishu=getipguishu($onlineip);//2025.12.21
(3)根据后台开关,判断用网络还是本地方式更新数据
//$ipfrom = $ipTable->getIpFrom($onlineip);
$ipfrom = $db_ipguishu ? $guishu : $ipTable->getIpFrom($onlineip);
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线zhangjingyu

只看该作者 144楼 发表于: 2025-12-21 21:19:49 星期日  点亮(0)
网络查询的方式需要访问外网,不知道发帖/回帖时会不会有影响,就怕请求呼应时间太长。暂时测试一段时间再说。

后台备份了一次数据。好了,去休息。
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线zhangjingyu

只看该作者 145楼 发表于: 2026-03-31 22:36:10 星期二  点亮(0)
最近发现帖子的ip地址来源似乎都不显示了。 晚上在联想笔记本电脑上用ftp软件下载调试php文件进行测试,发现“$string =mb_convert_encoding($str,'GBK',$encode);”这里面的函数居然不起作用了。然后慢慢重新调试,主要是截取字符串的方法,以得到最后想要的ip地址来源。只是这个方法似乎不太稳定啊。
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线BI4IVE

只看该作者 146楼 发表于: 2026-04-01 00:48:49 星期三  点亮(0)
主要问题是官方不做了,其实如果做的话加个插件目前访问量免费额度足够支撑
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!
离线zhangjingyu

只看该作者 147楼 发表于: 2026-04-01 20:50:59 星期三  点亮(0)
其实这个ip地址来源也不是挺准,只能说是作为一个参考。从设计上来讲,是很不错的功能,而且位置也很显眼。就是,数据的准确性不高。 之前,还有dat格式的ip数据库文件,只是这里面的数据准确性也不是很高,而且现在也很难找到这样的文件了。所以,只能尝试找一个尽可能准确性高的网站,想办法从页面获取ip地址来源数据。只是,尝试成功了,却是持续的时间不长。 以后只能是常检查,常维护了。
尊重每位祺师,做有价值的祺文化社区!欢迎光临,并感谢您的支持与陪伴!
我希望能通过这个论坛让更多的朋友更多的关爱自己的家人和朋友,不要等到有一天失去后才知道没有好好的珍惜,才知道
拥有的珍贵!亲爱的们,如果你懂得,请把这份关爱传递,让更多的人加入到爱心接力当中,让每个人的心中都洋溢着爱的温馨!

我们应该知道:岁月如梭!其实生命,是很短暂,也是很脆弱的东西…… 设置自己的帖子签名请点这里!