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 5.0 Pear安装方法
Dec 06 PHP
phpMyAdmin2.11.6安装配置方法
Aug 24 PHP
Mysql数据库操作类( 1127版,提供源码下载 )
Dec 02 PHP
基于MySQL体系结构的分析
May 02 PHP
解析PHP生成静态html文件的三种方法
Jun 18 PHP
个人写的PHP验证码生成类分享
Aug 21 PHP
PHP判断一个gif图片是否为动态图片的方法
Nov 19 PHP
ThinkPHP表单数据智能写入create方法实例分析
Sep 27 PHP
php+jQuery+Ajax实现点赞效果的方法(附源码下载)
Jul 21 PHP
symfony2.4的twig中date用法分析
Mar 18 PHP
php mysql实现mysql_select_db选择数据库
Dec 30 PHP
如何理解PHP核心特性命名空间
May 28 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
关于手调机和数调机的选择
2021/03/02 无线电
ThinkPHP空模块和空操作详解
2014/06/30 PHP
为PHP安装imagick时出现Cannot locate header file MagickWand.h错误的解决方法
2014/11/03 PHP
PHP进程通信基础之信号
2017/02/19 PHP
php ajax confirm 删除实例详解
2019/03/06 PHP
纯js实现的论坛常用的运行代码的效果
2008/07/15 Javascript
利用ajaxfileupload插件实现文件上传无刷新的具体方法
2013/06/08 Javascript
javascript中createElement的两种创建方式
2015/05/14 Javascript
JavaScript编写连连看小游戏
2015/07/07 Javascript
jQuery基础知识点总结(DOM操作)
2016/06/01 Javascript
Vuejs第六篇之Vuejs与form元素实例解析
2016/09/05 Javascript
jQuery.datatables.js插件用法及api实例详解
2016/10/28 Javascript
JS实现的样式切换功能tableCSS实例
2016/12/30 Javascript
基于Vue.js实现tab滑块效果
2017/07/23 Javascript
canvas轨迹回放功能实现
2017/12/20 Javascript
nodejs express配置自签名https服务器的方法
2018/05/22 NodeJs
基于vue框架手写一个notify插件实现通知功能的方法
2019/03/31 Javascript
JS中准确判断变量类型的方法
2020/06/01 Javascript
vue使用vant中的checkbox实现全选功能
2020/11/17 Vue.js
js实现类选择器和name属性选择器的示例步骤
2021/02/07 Javascript
[44:47]Ti4 循环赛第三日 iG vs NaVi
2014/07/12 DOTA
python中执行shell命令的几个方法小结
2014/09/18 Python
python中 chr unichr ord函数的实例详解
2017/08/06 Python
Python处理session的方法整理
2019/08/29 Python
带你彻底搞懂python操作mysql数据库(cursor游标讲解)
2020/01/06 Python
python实现拼图小游戏
2020/02/22 Python
python实现密度聚类(模板代码+sklearn代码)
2020/04/27 Python
Python3之乱码\xe6\x97\xa0\xe6\xb3\x95处理方式
2020/05/11 Python
Spring @Enable模块驱动原理及使用实例
2020/06/23 Python
python 抓取知乎指定回答下视频的方法
2020/07/09 Python
香港草莓网:Strawberrynet香港
2019/05/10 全球购物
介绍一下Linux内核的排队自旋锁
2014/01/04 面试题
幼儿园春游活动方案
2014/01/19 职场文书
政府领导干部个人对照检查材料思想汇报
2014/09/24 职场文书
2016年领导干部正风肃纪心得体会
2015/10/09 职场文书
Win11如何启用启动修复 ? Win11执行启动修复的三种方法
2022/04/08 数码科技