php实现首页链接查询 友情链接检查的代码


Posted in PHP onJanuary 05, 2010
<?php 
/* 
* 网站首页超链接反查 友情链接查询 外链查询 
* web技术爱好者 lost63.com原创 QQ:35501547 
* 转载请注明出处 
*/ if($_GET['action']=="check"){ 
$domain=$_POST['domain']; 
//域名表单项为空,则获取地址栏参数 
if($domain==""){ 
$domain=$_GET['domain']; 
} 
//网址 
$url="http://".$domain; 
//读取网页,返回网页源文件内容 
function read_url($str){ 
$file=fopen($str,"r") or die($str.'->远程网址读取失败! <a href="?next='.($_GET['next']+1).'&action=check&domain='.$_GET['domain'].'">点击继续查询</a><br>'); 
while(!feof($file)){ 
$result.=fgets($file,9999); 
} 
fclose($file); 
return $result; 
} 
//打开session 
session_start(); 
//如果$_SESSION['matches']没有赋值就设置它; 
if(!isset($_SESSION['matches'])){ 
$result=read_url($url); 
preg_match_all('/<a(.*?)href="(http:\/\/.*?)"(.*?)>(.*?)<\/a>/i',$result,$matches); 
$num=count($matches[2]); 
for($i=0;$i<$num;$i++){ 
if(strpos($matches[2][$i],$domain)>0){ 
unset($matches[2][$i]); 
} 
} 
$_SESSION['matches']=$matches[2]; 
} 
//直接从session中取出包含网址数组; 
$matches[2]=$_SESSION['matches']; 
$n=count($matches[2]); 
$next=0; 
$next+=$_GET['next']; 
$result=read_url($matches[2][$next]); 
if(strpos($result,$domain)>0){ 
$value=$matches[2][$next].' <font color=green>true</font><br>'; 
}else{ 
$value=$matches[2][$next].' <font color=red>false</font><br>'; 
} 
$values=$_COOKIE['check_result'].$value; 
setcookie("check_result",$values,time()+3600); 
echo $values; 
if($next==$n){ 
echo "扫描结束!"; 
}else{ 
echo '<meta http-equiv="refresh" content="1;URL=?next='.($next+1).'&action=check&domain='.$domain.'" />'; 
} 

}else{ 
//删除cookies 
setcookie("check_result","",time()-3600); 
echo '<form name="form1" method="post" action="?action=check"> 
<input type="text" name="domain"> 
<input type="submit" name="Submit" value="提交"> 
<font color="red">*</font>输入域名 如:3water.com 
</form>'; 
} 
?>
PHP 相关文章推荐
PHP文本数据库的搜索方法
Oct 09 PHP
PHP开发文件系统实例讲解
Oct 09 PHP
由php的call_user_func传reference引发的思考
Jul 23 PHP
深入eAccelerator与memcached的区别详解
Jun 06 PHP
destoon在360浏览器下出现用户被强行注销的解决方法
Jun 26 PHP
PHP命名空间(namespace)的动态访问及使用技巧
Aug 18 PHP
thinkphp的静态缓存用法分析
Nov 29 PHP
主流PHP框架的优缺点对比分析
Dec 25 PHP
jquery+php实现导出datatables插件数据到excel的方法
Jul 06 PHP
学习php设计模式 php实现工厂模式(factory)
Dec 07 PHP
YII Framework框架教程之缓存用法详解
Mar 14 PHP
PHP设计模式(三)建造者模式Builder实例详解【创建型】
May 02 PHP
用php实现的获取网页中的图片并保存到本地的代码
Jan 05 #PHP
用PHP查询搜索引擎排名位置的代码
Jan 05 #PHP
PHP 批量更新网页内容实现代码
Jan 05 #PHP
PHP 存储文本换行实现方法
Jan 05 #PHP
PHP 将图片按创建时间进行分类存储的实现代码
Jan 05 #PHP
PHP 采集获取指定网址的内容
Jan 05 #PHP
php 无极分类(递归)实现代码
Jan 05 #PHP
You might like
桌面中心(三)修改数据库
2006/10/09 PHP
ThinkPHP整合百度Ueditor图文教程
2014/10/21 PHP
php通过ksort()函数给关联数组按照键排序的方法
2015/03/18 PHP
PHP chop()函数讲解
2019/02/11 PHP
js中prototype用法详细介绍
2013/11/14 Javascript
分享我对JS插件开发的一些感想和心得
2016/02/04 Javascript
动态加载js文件简单示例
2016/04/21 Javascript
微信开发 消息推送实现代码
2016/10/21 Javascript
基于VUE移动音乐WEBAPP跨域请求失败的解决方法
2018/01/16 Javascript
JavaScript中严格判断NaN的方法
2018/02/16 Javascript
原生js实现碰撞检测
2020/03/12 Javascript
浅谈JavaScript中this的指向更改
2020/07/28 Javascript
JavaScript中如何调用Java方法
2020/09/16 Javascript
[51:26]VP vs VG 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
[46:23]完美世界DOTA2联赛PWL S2 FTD vs Magma 第一场 11.20
2020/11/23 DOTA
pymssql数据库操作MSSQL2005实例分析
2015/05/25 Python
Python OpenCV读取png图像转成jpg图像存储的方法
2018/10/28 Python
python监测当前联网状态并连接的实例
2018/12/18 Python
树莓派与PC端在局域网内运用python实现即时通讯
2019/06/22 Python
python并发编程多进程之守护进程原理解析
2019/08/20 Python
解决tensorflow训练时内存持续增加并占满的问题
2020/01/19 Python
Python socket处理client连接过程解析
2020/03/18 Python
QML用PathView实现轮播图
2020/06/03 Python
Python调用OpenCV实现图像平滑代码实例
2020/06/19 Python
python基于openpyxl生成excel文件
2020/12/23 Python
IE滤镜与CSS3效果(详细整理分享)
2013/01/25 HTML / CSS
HTML5中的Web Notification桌面右下角通知功能的实现
2018/04/19 HTML / CSS
机械个人求职信范文
2014/01/24 职场文书
电子信息专业自荐书
2014/02/04 职场文书
广告语设计及教案
2014/03/21 职场文书
技术负责人任命书
2014/06/05 职场文书
工地安全标语
2014/06/07 职场文书
少年派的奇幻漂流观后感
2015/06/08 职场文书
2015年初中教师个人工作总结
2015/07/21 职场文书
Python保存并浏览用户的历史记录
2022/04/29 Python
nginx配置指令之server_name的具体使用
2022/08/14 Servers