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 相关文章推荐
10条PHP高级技巧[修正版]
Aug 02 PHP
ThinkPHP结合AjaxFileUploader实现无刷新文件上传的方法
Oct 29 PHP
PHP实现格式化文件数据大小显示的方法
Jan 03 PHP
php打印一个边长为N的实心和空心菱型的方法
Mar 02 PHP
golang与PHP输出excel示例
Jul 22 PHP
thinkPHP分页功能实例详解
May 05 PHP
PHP长连接实现与使用方法详解
Feb 11 PHP
php往mysql中批量插入数据实例教程
Dec 12 PHP
PHP cookie,session的使用与用户自动登录功能实现方法分析
Jun 05 PHP
laravel 实现登陆后返回登陆前的页面方法
Oct 03 PHP
Laravel 自动生成验证的实例讲解:login / logout
Oct 14 PHP
关于PHP数组迭代器的使用方法实例
Nov 17 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
php中$this-&amp;gt;含义分析
2009/11/29 PHP
PHP中模拟处理HTTP PUT请求的例子
2014/07/22 PHP
在SAE上搭建最新wordpress的方法
2014/12/21 PHP
PHP生成静态HTML页面最简单方法示例
2015/04/09 PHP
php获取指定范围内最接近数的方法
2015/06/02 PHP
php使用curl详细解析及问题汇总
2016/08/11 PHP
php 三元运算符实例详细介绍
2016/12/15 PHP
ThinkPHP框架实现数据增删改
2017/05/07 PHP
Laravel框架表单验证操作实例分析
2019/09/30 PHP
JavaScript实现快速排序(自已编写)
2012/12/19 Javascript
模拟电子签章盖章效果的jQuery插件源码
2013/06/24 Javascript
jquery ui dialog实现弹窗特效的思路及代码
2013/08/03 Javascript
javascript 回到顶部效果的实现代码
2014/02/17 Javascript
详解JavaScript数组的操作大全
2015/10/19 Javascript
js判断登陆用户名及密码是否为空的简单实例
2016/05/16 Javascript
深入理解Javascript中的自执行匿名函数
2016/06/03 Javascript
详解性能更优越的小程序图片懒加载方式
2018/07/18 Javascript
react 国际化的实现代码示例
2018/09/14 Javascript
javascript数组去重方法总结(推荐)
2019/03/20 Javascript
vue+layui实现select动态加载后台数据的例子
2019/09/20 Javascript
[46:10]2014 DOTA2国际邀请赛中国区预选赛 CnB VS HGT
2014/05/21 DOTA
Python smtplib实现发送邮件功能
2018/05/22 Python
在python中实现强制关闭线程的示例
2019/01/22 Python
Python使用monkey.patch_all()解决协程阻塞问题
2020/04/15 Python
西班牙高科技产品购物网站:MejorDeseo
2019/09/08 全球购物
西班牙最好的在线购买葡萄酒的商店:Vinoseleccion
2019/10/30 全球购物
大学军训通讯稿
2014/01/13 职场文书
调解员先进事迹材料
2014/02/07 职场文书
小学生开学感言
2014/02/28 职场文书
《与朱元思书》的教学反思
2014/04/17 职场文书
娱乐节目策划方案
2014/06/10 职场文书
外贸会计专业自荐信
2014/06/22 职场文书
论群众路线学习心得体会
2014/10/31 职场文书
员工手册编写范本
2015/05/14 职场文书
详解Nginx启动失败的几种错误处理
2021/04/01 Servers
python中字符串String及其常见操作指南(方法、函数)
2022/04/06 Python