一段防盗连的PHP代码

 更新时间:2016年11月25日 17:36  点击:2142
<?php
$ADMIN[defaulturl] = "http://www.163.com/404.htm";//盗链返回的地址
$okaysites = array("http://www.163.com/","http://163.com"); //白名单
$ADMIN[url_1] = "http://www.163.com/download/";//下载地点1
$ADMIN[url_2] = "";//下载地点2,以此类推
$reffer = $HTTP_REFERER;
if($reffer) {
$yes = 0;
while(list($domain, $subarray) = each($okaysites)) {
if (ereg($subarray,"$reffer")) {
$yes = 1;
}
}
$theu = "url"."_"."$site";
if ($ADMIN[$theu] AND $yes == 1) {
header("Location: $ADMIN[$theu]/$file");
} else {
header("Location: $ADMIN[defaulturl]");
}
} else {
header("Location: $ADMIN[defaulturl]");
}
?>    
使用方法:将上述代码保存为dao4.php,
比如测试用的validatecode.rar在站点http://163.com/download里面,
则用以下代码表示下载连接.
   
文件名?site=1&file=文件    
例如以下URL.复制到你的站点下试试
   
http://www.163.com/dao4.php?site=1&file=validatecode.rar
以上代码测试可用

PHP操作文件问答
前言:
PHP中对各类数据库的操作有着支持,对文件的操作也同样有着很丰富的操作方法,很多朋友现在的操作还是基于文件操作可是有的时候在操作文件的时候还存在不少的困惑和疑点,以下是我在日常编写过程中碰到的以及坛上朋友所碰到的关于文件操作的一些问题收藏吧。
问:如何新建一个文件?
答:
1、使用fopen("要建立的文件名","参数"),参数可选w,w+,a,a+
2、使用exec("echo '' > 要建立的文件名");这样是使用系统方式建立这个文件,你还可以使用touch这个linux命令来建立
问:为什么我无法建立文件?
答:
1、如果你使用了fopen建立文件,是否正确的使用了参数
2、系统权限问题,请询问你的WEBMASTER你的FTP目录是否有写的权限
3、FTP权限问题,你要确认你的PHP文件所要写文件所在目录要有写的权限,也就是你的FTP软件登陆后other组要有写这个权限,
如果没有请修改权限后尝试
问:如何将文件读入数组?
答:使用file函数
问:如何将文件全部读出?
答:
1、使用fread($fp);
2、如果你的PHP版本>=4.3.0的话可以使用file_get_contents();
问:如何判断文件是否存在?
答:使用file_exists();
再问:为什么不使用fopen()来判断呢?
答:原因是有时候是因为权限问题导致fopen返回的数据引导我们错误的判断
问:为什么当我读取一个WEB页面的时候出错?
答:
1、可能是你的传递参数错,当读取WEB页面的时候你只可以使用r方式读取页面
2、确保你要读取的WEB页面可以访问
问:我如何才能获得文件的相关属性?
答:PHP提供了一组获得文件属性的方法,例如 filemtime(),fileowner(),filegroup(),filectime(),fileatime()...详细的使用请参阅手册。
问:PHP打开文件后是否可以象C一样进行文件“游标”的定位呢?
答:可以的,使用fseek();
问:我想在访问文件的时候不允许其他人也访问此文件,怎么办?
答:
1、你可以采用其他方面程序限制用户接入文件操作的页面
2、使用flock();详细的参数以及使用方法请参阅手册
问:如何删除文件内第一行,或指定一行数据?
答:
PHP并没有提供这样的操作方法,不过我们可以通过组合使用,以下代码演示我们将删除文件"test.dat"中的第三行数据(test.dat 文件中数据不止三行)
10、会员信息显示文件show.php3
<?
if($login){
require("common.php3");
if(!isset($id))error("怎么没有填写用户的ID?");
else{
$id=chop($id);
$dbm=dbmopen("class","r");
if(!dbmexists($dbm,$id))error("没有这个用户ID!");
else{
$data=dbmfetch($dbm,$id);
$info=explode("|!:!|",$data);
$name=$info[0]; $nickname=$info[1]; $mail=$info[2]; $home=$info[3]; $oicq=$info[4];
$icq=$info[5]; $add=$info[6]; $tel=$info[7]; $birth=$info[8]; $job=$info[9];
$intro=$info[10]; $sex=$info[11];
}
dbmclose($dbm);
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>查 看 <?echo$name?> 的 资 料</TITLE>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<STYLE type=text/css>A {
COLOR: #336699; FONT-FAMILY: "宋体"; FONT-SIZE: 9pt; TEXT-DECORATION: none
}
A:hover {
COLOR: #ff0000; FONT-FAMILY: "宋体"; FONT-SIZE: 9pt; TEXT-DECORATION: underline
}
BODY {
FONT-FAMILY: "宋体", "serif"; FONT-SIZE: 9pt
}
TD {
FONT-FAMILY: "宋体", "serif"; FONT-SIZE: 9pt
}
INPUT {
FONT-SIZE: 9pt
}
P {
FONT-SIZE: 9pt
}
BR {
FONT-SIZE: 9pt
}
TR {
FONT-SIZE: 9pt
}
TABLE {
FONT-SIZE: 9pt
}
INPUT {
FONT-FAMILY: arial,宋体; FONT-SIZE: 9pt; PADDING-TOP: 3px
}
INPUT.text {
BACKGROUND-COLOR: #f0f0f0; BORDER-BOTTOM: #101010 1px solid; BORDER-LEFT: #101010 1px solid; BORDER-RIGHT: #101010 1px solid; BORDER-TOP: #101010 1px solid; COLOR: #000000
 <?php
    
    
    $counterFile = "balong.txt";//存储数值的文件名几路径
    
    function displayCounter($counterFile) {
     $fp = fopen($counterFile,"rw");
     $num = fgets($fp,5);
     $num += 1;
     print "您是第 "."$num"." 个看巴泷计数器的家伙";
     exec( "rm -rf $counterFile");
     exec( "echo $num > $counterFile");
    }
    
    if (!file_exists($counterFile)) {
     exec( "echo 0 > $counterFile");
    }
    
    displayCounter($counterFile);
    
    ?>
#########################################
##标题    关于输出缓冲的讨论
##整理    Diego Lynn @ 林全国
##原作    By Zeev Suraski
#########################################
关于输出缓冲的讨论(Output buffering)
目录
HTTP Header
为什么要使用Output Buffering技术
Output Buffering的工作原理
基本用法
高级用法
使事情更为简单
哈哈,我成功了
我个人认为,Output buffering是比较纯粹的PHP 4.0特征。尽管从概念上看来相当简单,但是output buffering功能非常强大,能使开发者更容易地开发高级而有效的程序。
本文将介绍HTTP header,以及output buffering如何帮助您处理HTTP header,并介绍了output buffering的一些高级用法。
HTTP Header[HTTP 标题]
对于使用HTTP 协议建立的每个请求,Web服务器产生的响应通常包括两个部分
[!--infotagslink--]

相关文章

  • 源码分析系列之json_encode()如何转化一个对象

    这篇文章主要介绍了源码分析系列之json_encode()如何转化一个对象,对json_encode()感兴趣的同学,可以参考下...2021-04-22
  • 不打开网页直接查看网站的源代码

      有一种方法,可以不打开网站而直接查看到这个网站的源代码..   这样可以有效地防止误入恶意网站...   在浏览器地址栏输入:   view-source:http://...2016-09-20
  • php中去除文字内容中所有html代码

    PHP去除html、css样式、js格式的方法很多,但发现,它们基本都有一个弊端:空格往往清除不了 经过不断的研究,最终找到了一个理想的去除html包括空格css样式、js 的PHP函数。...2013-08-02
  • php 调用goolge地图代码

    <?php require('path.inc.php'); header('content-Type: text/html; charset=utf-8'); $borough_id = intval($_GET['id']); if(!$borough_id){ echo ' ...2016-11-25
  • JS基于Mootools实现的个性菜单效果代码

    本文实例讲述了JS基于Mootools实现的个性菜单效果代码。分享给大家供大家参考,具体如下:这里演示基于Mootools做的带动画的垂直型菜单,是一个初学者写的,用来学习Mootools的使用有帮助,下载时请注意要将外部引用的mootools...2015-10-23
  • JS实现自定义简单网页软键盘效果代码

    本文实例讲述了JS实现自定义简单网页软键盘效果。分享给大家供大家参考,具体如下:这是一款自定义的简单点的网页软键盘,没有使用任何控件,仅是为了练习JavaScript编写水平,安全性方面没有过多考虑,有顾虑的可以不用,目的是学...2015-11-08
  • JS+CSS实现分类动态选择及移动功能效果代码

    本文实例讲述了JS+CSS实现分类动态选择及移动功能效果代码。分享给大家供大家参考,具体如下:这是一个类似选项卡功能的选择插件,与普通的TAb区别是加入了动画效果,多用于商品类网站,用作商品分类功能,不过其它网站也可以用,...2015-10-21
  • php 取除连续空格与换行代码

    php 取除连续空格与换行代码,这些我们都用到str_replace与正则函数 第一种: $content=str_replace("n","",$content); echo $content; 第二种: $content=preg_replac...2016-11-25
  • php简单用户登陆程序代码

    php简单用户登陆程序代码 这些教程很对初学者来讲是很有用的哦,这款就下面这一点点代码了哦。 <center> <p>&nbsp;</p> <p>&nbsp;</p> <form name="form1...2016-11-25
  • PHP实现清除wordpress里恶意代码

    公司一些wordpress网站由于下载的插件存在恶意代码,导致整个服务器所有网站PHP文件都存在恶意代码,就写了个简单的脚本清除。恶意代码示例...2015-10-23
  • JS实现双击屏幕滚动效果代码

    本文实例讲述了JS实现双击屏幕滚动效果代码。分享给大家供大家参考,具体如下:这里演示双击滚屏效果代码的实现方法,不知道有觉得有用处的没,现在网上还有很多还在用这个特效的呢,代码分享给大家吧。运行效果截图如下:在线演...2015-10-30
  • js识别uc浏览器的代码

    其实挺简单的就是if(navigator.userAgent.indexOf('UCBrowser') > -1) {alert("uc浏览器");}else{//不是uc浏览器执行的操作}如果想测试某个浏览器的特征可以通过如下方法获取JS获取浏览器信息 浏览器代码名称:navigator...2015-11-08
  • index.php怎么打开?如何打开index.php?

    index.php怎么打开?初学者可能不知道如何打开index.php,不会的同学可以参考一下本篇教程 打开编辑:右键->打开方式->经文本方式打开打开运行:首先你要有个支持运行PH...2017-07-06
  • JS日期加减,日期运算代码

    一、日期减去天数等于第二个日期function cc(dd,dadd){//可以加上错误处理var a = new Date(dd)a = a.valueOf()a = a - dadd * 24 * 60 * 60 * 1000a = new Date(a)alert(a.getFullYear() + "年" + (a.getMonth() +...2015-11-08
  • PHP开发微信支付的代码分享

    微信支付,即便交了保证金,你还是处理测试阶段,不能正式发布。必须到你通过程序测试提交订单、发货通知等数据到微信的系统中,才能申请发布。然后,因为在微信中是通过JS方式调用API,必须在微信后台设置支付授权目录,而且要到...2014-05-31
  • PHP常用的小程序代码段

    本文实例讲述了PHP常用的小程序代码段。分享给大家供大家参考,具体如下:1.计算两个时间的相差几天$startdate=strtotime("2009-12-09");$enddate=strtotime("2009-12-05");上面的php时间日期函数strtotime已经把字符串...2015-11-24
  • 几种延迟加载JS代码的方法加快网页的访问速度

    本文介绍了如何延迟javascript代码的加载,加快网页的访问速度。 当一个网站有很多js代码要加载,js代码放置的位置在一定程度上将会影像网页的加载速度,为了让我们的网页加载速度更快,本文总结了一下几个注意点...2013-10-13
  • php怎么用拼音 简单的php中文转拼音的实现代码

    小编分享了一段简单的php中文转拼音的实现代码,代码简单易懂,适合初学php的同学参考学习。 代码如下 复制代码 <?phpfunction Pinyin($_String...2017-07-06
  • PHP中func_get_args(),func_get_arg(),func_num_args()的区别

    复制代码 代码如下:<?php function jb51(){ print_r(func_get_args()); echo "<br>"; echo func_get_arg(1); echo "<br>"; echo func_num_args(); } jb51("www","j...2013-10-04
  • php导出csv格式数据并将数字转换成文本的思路以及代码分享

    php导出csv格式数据实现:先定义一个字符串 存储内容,例如 $exportdata = '规则111,规则222,审222,规222,服2222,规则1,规则2,规则3,匹配字符,设置时间,有效期'."/n";然后对需要保存csv的数组进行foreach循环,例如复制代...2014-06-07