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 相关文章推荐
asp和php下textarea提交大量数据发生丢失的解决方法
Jan 20 PHP
PHP学习之正则表达式
Apr 17 PHP
Zend Framework中的简单工厂模式 图文
Jul 10 PHP
php 邮件发送问题解决
Mar 22 PHP
php获取四位字母和数字的随机数的实现方法
Jan 09 PHP
PHP中浮点数计算比较及取整不准确的解决方法
Jan 09 PHP
Redis使用Eval多个键值自增的操作实例
Nov 04 PHP
Zend Framework入门教程之Zend_Mail用法示例
Dec 08 PHP
详解PHP5.6.30与Apache2.4.x配置
Jun 02 PHP
PHP利用Cookie设置用户30分钟未操作自动退出功能
Jul 03 PHP
ThinkPHP 5.x远程命令执行漏洞复现
Sep 23 PHP
PHP设计模式之装饰器(装饰者)模式(Decorator)入门与应用详解
Dec 13 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
linux php mysql数据库备份实现代码
2009/03/10 PHP
PHP支持多种格式图片上传(支持jpg、png、gif)
2011/11/03 PHP
php object转数组示例
2014/01/15 PHP
PHP获取真实客户端的真实IP
2017/03/07 PHP
php实现微信模拟登陆、获取用户列表及群发消息功能示例
2017/06/28 PHP
PHP实现获取文件mime类型多种方法解析
2020/05/28 PHP
Jquery截取中文字符串的实现代码
2010/12/22 Javascript
Raphael一个用于在网页中绘制矢量图形的Javascript库
2013/01/08 Javascript
tangram框架响应式加载图片方法
2013/11/21 Javascript
JS和JQ的event对象区别分析
2014/11/24 Javascript
JS+CSS实现鼠标滑过时动态翻滚的导航条效果
2015/09/24 Javascript
基于OL2实现百度地图ABCD marker的效果
2015/10/01 Javascript
Node.js+Express配置入门教程详解
2016/05/19 Javascript
JavaScript表单验证开发
2016/11/23 Javascript
jQuery基于ajax操作json数据简单示例
2017/01/05 Javascript
微信小程序实现拖拽 image 触摸事件监听的实例
2017/08/17 Javascript
Vue使用watch监听一个对象中的属性的实现方法
2019/05/10 Javascript
vue响应式更新机制及不使用框架实现简单的数据双向绑定问题
2019/06/27 Javascript
ZK中使用JS读取客户端txt文件内容问题
2019/11/07 Javascript
javascript事件循环event loop的简单模型解释与应用分析
2020/03/14 Javascript
深入webpack打包原理及loader和plugin的实现
2020/05/06 Javascript
Vue组件跨层级获取组件操作
2020/07/27 Javascript
python中的yield使用方法
2014/02/11 Python
使用Python获取并处理IP的类型及格式方法
2018/11/01 Python
使用CodeMirror实现Python3在线编辑器的示例代码
2019/01/14 Python
python 输出列表元素实例(以空格/逗号为分隔符)
2019/12/25 Python
python实现单机五子棋
2020/08/28 Python
Python 的 __str__ 和 __repr__ 方法对比
2020/09/02 Python
英国排名第一的停车场运营商:NCP
2019/08/26 全球购物
南京某软件公司的.net面试题
2015/11/30 面试题
博士研究生自我鉴定范文
2013/12/04 职场文书
大堂副理的岗位职责范文
2014/02/17 职场文书
人资专员岗位职责
2014/04/04 职场文书
暑期社会实践先进个人主要事迹
2014/05/22 职场文书
财务工作疏忽检讨书
2014/09/11 职场文书
Windows Server 2008 修改远程登录端口以及配置防火墙
2022/04/28 Servers