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&amp;java(二)
Oct 09 PHP
mysql 性能的检查和优化方法
Jun 21 PHP
PHP URL地址获取函数代码(端口等) 推荐
May 15 PHP
php使用类继承解决代码重复的问题
Feb 11 PHP
Zend Framework教程之动作的基类Zend_Controller_Action详解
Mar 07 PHP
php基于curl实现的股票信息查询类实例
Nov 11 PHP
PHP实现的同步推荐操作API接口案例分析
Nov 30 PHP
Joomla框架实现字符串截取的方法示例
Jul 18 PHP
PHP实现数组根据某个字段进行水平合并,横向合并案例分析
Oct 08 PHP
详解Laravel设置多态关系模型别名的方式
Oct 17 PHP
php的instanceof和判断闭包Closure操作示例
Jan 26 PHP
PHP 8新特性简介
Aug 18 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
JAVASCRIPT HashTable
2007/01/22 Javascript
Ajax一统天下之Dojo整合篇
2007/03/24 Javascript
浏览器页面区域大小的js获取方法
2013/09/21 Javascript
jquery获取tr并更改tr内容示例代码
2014/02/13 Javascript
jQuery焦点图切换简易插件制作过程全纪录
2014/08/27 Javascript
javascript中sort排序实例详解
2016/07/24 Javascript
node.js路径处理方法以及绝对路径详解
2021/03/04 Javascript
jQuery.form.js插件不能解决连接超时(timeout)的原因分析及解决方法
2016/10/14 Javascript
基于touch.js手势库+zepto.js插件开发图片查看器(滑动、缩放、双击缩放)
2016/11/17 Javascript
利用node.js本地搭建HTTP服务器
2017/04/19 Javascript
微信小程序 http请求的session管理
2017/06/07 Javascript
Bootstrap modal只加载一次数据的解决办法(推荐)
2017/11/24 Javascript
Vue 使用中的小技巧
2018/04/26 Javascript
小程序文字跑马灯效果
2018/12/28 Javascript
微信小程序实现选择地址省市区三级联动
2020/06/21 Javascript
python 不关闭控制台的实现方法
2011/10/23 Python
Python3中使用urllib的方法详解(header,代理,超时,认证,异常处理)
2016/09/21 Python
Python编程实现双链表,栈,队列及二叉树的方法示例
2017/11/01 Python
Python实现自动发送邮件功能
2021/03/02 Python
Python利用公共键如何对字典列表进行排序详解
2018/05/19 Python
python3中函数参数的四种简单用法
2018/07/09 Python
在pycharm中使用git版本管理以及同步github的方法
2019/01/16 Python
使用Python向C语言的链接库传递数组、结构体、指针类型的数据
2019/01/29 Python
Restful_framework视图组件代码实例解析
2020/11/17 Python
如何用Python编写一个电子考勤系统
2021/02/08 Python
几个CSS3的flex弹性盒模型布局的简单例子演示
2016/05/12 HTML / CSS
HomeAway澳大利亚:预订你的度假屋,公寓、度假村、别墅等
2019/02/20 全球购物
英国家居用品和家居装饰品购物网站:Cox & Cox
2019/08/25 全球购物
广州地球村科技数据库题目
2016/04/25 面试题
什么是虚拟内存?虚拟内存有什么优势?
2016/02/09 面试题
餐饮管理自我介绍信
2014/01/15 职场文书
技校毕业生自荐信范文
2014/03/07 职场文书
物联网工程专业推荐信
2014/09/08 职场文书
四风查摆剖析材料
2014/10/10 职场文书
2014年帮扶工作总结
2014/11/26 职场文书
会计简历自我评价
2015/03/10 职场文书