首页 > php教程 > php手册 > 正文

欢迎访客之显示对方网站PR

php中文网
发布: 2016-06-06 20:08:57
原创
1269人浏览过

没事想了一个略贱的功能,在欢迎访客界面上显示对方PR,这个也可以广泛应用在评论者和友链等地方,不过那样就太贱了,所以我决定弄成只对来访者本人显示. 效果大家应该已经看到了,顺便附张图吧 Google pagerank的API地址结构如下 http://toolbarqueries.google.c

没事想了一个略贱的功能,在欢迎访客界面上显示对方PR,这个也可以广泛应用在评论者和友链等地方,不过那样就太贱了,所以我决定弄成只对来访者本人显示.
效果大家应该已经看到了,顺便附张图吧

欢迎访客之显示对方网站PR
Google pagerank的API地址结构如下
http://toolbarqueries.google.com.hk/tbr?client=navclient-auto&features=Rank&q=info:xiaohudie.net&ch=820909c8a
登录后复制

后面那个ch的值相当于一个key,需要php运算,但是我在本地测试的时候发现和我自己网站运算的结果不同,暂时也不知道是PHP版本问题还是WIN与LINUX的问题,所以把两个运算方法都给出来吧,如果用第一种没有调出正确的PR,换成第二种就可以了.
查询PHP版本的方法如下

下面是对访客显示对方网站pr的代码

代码一

这是我自己网站测试通过的,操作系统LINUX,PHP版本5.2.17

<?php
if($_COOKIE["comment_author_url_" . COOKIEHASH]!="") {
function app_hash_url($url) {
$seed = "Mining PageRank is AGAINST GOOGLE'S TERMS OF SERVICE.";
$hash = 0x01020345;
for ($i=0; $i<strlen($url); $i++) {
$hash ^= ord($seed{$i%87}) ^ ord($url{$i});
$hash = (($hash >> 23) & 0x1FF) | $hash << 9;
}
return sprintf("8%x", $hash);
}
$domain1 = $_COOKIE["comment_author_url_".COOKIEHASH];
$domain=substr($domain1,7);//去掉访客网址前面的http://,只保留domain
$startUrl = "http://toolbarqueries.google.com/tbr?client=navclient-auto&features=Rank&q=info:";
$hash = substr(app_hash_url($domain),9);//由于我网站运算hash的时候得出的ch值错误,观察发现要从第10位开始截
$resultUrl = $startUrl.$domain."&ch=8".$hash;
$array = get_headers($resultUrl,1);
if(!preg_match('/403/',$array[0])){//这个以前文章提过,用来判断是否可以准确读取页面,通常没有pr的时候调用api会跳403
$pageContent = file_get_contents($resultUrl);
$pageRank = substr($pageContent,9);
echo $pageRank;}else { echo "0";}
}
?>
登录后复制

代码二

这是本地测试通过的代码,操作系统WIN7,PHP版本5.2.14

中解商务通
中解商务通

实时捕捉 一旦访问者打开您的网站,系统会立即显示,这时您就可以查看用户的信息,如:来自搜索引擎关键词、友情链接或直接访问;访问者的IP地址,所在地区,正在访问哪个网页;以及访问者使用的操作系统、浏览器、显示器屏幕分辨率颜色深度等。 主动出击 变被动为主动,可以主动邀请访问者进行洽谈勾通,帮助客户深入了解您的企业和产品,同时获得对方的采购意向、联系方式等信息。 互动交流 主动销售和在线客服合二为一,

中解商务通 0
查看详情 中解商务通
<?php echo PHP_VERSION;
if($_COOKIE["comment_author_url_" . COOKIEHASH]!="") {
function app_hash_url($url) {
$seed = "Mining PageRank is AGAINST GOOGLE'S TERMS OF SERVICE.";
$hash = 0x01020345;
for ($i=0; $i<strlen($url); $i++) {
$hash ^= ord($seed{$i%87}) ^ ord($url{$i});
$hash = (($hash >> 23) & 0x1FF) | $hash << 9;
}
return sprintf("8%x", $hash);//貌似WIN主机直接这么算就可以得出准确的ch值
}
$domain1 = $_COOKIE['comment_author_url_'.COOKIEHASH];
$domain=substr($domain1,7);
$startUrl = "http://toolbarqueries.google.com/tbr?client=navclient-auto&features=Rank&q=info:";
$resultUrl = $startUrl.$domain.'&ch='.app_hash_url($domain);
$array = get_headers($resultUrl,1);
if(!preg_match('/403/',$array[0])){
$pageContent = file_get_contents("$resultUrl");
$pageRank = substr($pageContent,9);
echo $pageRank;
}else{echo '0';}
}
?>
登录后复制

如果想用在其他地方来查询某些网站的PR,改一下$domain值就行了.写完了,挺累的,你们不能像上两篇那样对我,才三十几条评论,我一颗七窍玲珑心都碎了

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门推荐
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号