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 相关文章推荐
打造计数器DIY三步曲(上)
Oct 09 PHP
如何使用脚本模仿登陆过程
Nov 22 PHP
Php Cookie的一个使用注意点
Nov 08 PHP
为IP查询添加GOOGLE地图功能的代码
Aug 08 PHP
php去掉字符串的最后一个字符附substr()的用法
Mar 23 PHP
关于尾递归的使用详解
May 02 PHP
大家都应该掌握的PHP关联数组使用技巧
Dec 25 PHP
PHP flush 函数使用注意事项
Aug 26 PHP
thinkphp ajaxfileupload实现异步上传图片的示例
Aug 28 PHP
PHP7如何开启Opcode打造强悍性能详解
May 11 PHP
PHP+RabbitMQ实现消息队列的完整代码
Mar 20 PHP
laravel解决迁移文件一次删除创建字段报错的问题
Oct 24 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设计聊天室步步通
2006/10/09 PHP
通过对服务器端特性的配置加强php的安全
2006/10/09 PHP
PHP数据缓存技术
2007/02/14 PHP
PHP 利用AJAX获取网页并输出的实现代码(Zjmainstay)
2012/08/31 PHP
WordPress中获取所使用的模板的页面ID的简单方法
2015/12/31 PHP
php unicode编码和字符串互转的方法
2020/08/12 PHP
javascript中typeof的使用示例
2013/12/19 Javascript
jQuery 取值、赋值的基本方法整理
2014/03/31 Javascript
实现checkbox全选、反选、取消JavaScript小脚本异常
2014/04/10 Javascript
Javascript的无new构建实例详解
2016/05/15 Javascript
基于cssSlidy.js插件实现响应式手机图片轮播效果
2016/08/30 Javascript
手机端实现Bootstrap简单图片轮播效果
2016/10/13 Javascript
用JavaScript实现让浏览器停止载入页面的方法
2017/01/19 Javascript
详解vue事件对象、冒泡、阻止默认行为
2017/03/20 Javascript
微信小程序 图片宽高自适应详解
2017/05/11 Javascript
react-router4 嵌套路由的使用方法
2017/07/24 Javascript
使用ionic(选项卡栏tab) icon(图标) ionic上拉菜单(ActionSheet) 实现通讯录界面切换实例代码
2017/10/20 Javascript
React Native时间转换格式工具类分享
2017/10/24 Javascript
vue axios post发送复杂对象问题
2019/06/04 Javascript
vue实现表单录入小案例
2019/09/27 Javascript
原生JavaScript之es6中Class的用法分析
2020/02/23 Javascript
[03:38]2014DOTA2西雅图国际邀请赛 VG战队巡礼
2014/07/07 DOTA
python获取Linux下文件版本信息、公司名和产品名的方法
2014/10/05 Python
python与sqlite3实现解密chrome cookie实例代码
2018/01/20 Python
解决python删除文件的权限错误问题
2018/04/24 Python
详解Django之admin组件的使用和源码剖析
2018/05/04 Python
Python中矩阵创建和矩阵运算方法
2018/08/04 Python
使用django的objects.filter()方法匹配多个关键字的方法
2019/07/18 Python
Python-openCV开运算实例
2020/07/05 Python
公路绿化方案
2014/05/12 职场文书
干部个人考察材料
2014/12/24 职场文书
毕业实习指导教师评语
2014/12/31 职场文书
违反学校规则制度检讨书
2015/01/01 职场文书
党员承诺书格式范文
2015/04/28 职场文书
主婚人致辞精选
2015/07/28 职场文书
小组组名及励志口号
2015/12/24 职场文书