php 图片防盗程序

 更新时间:2016年11月25日 16:05  点击:1602

RewriteEngine on
RewriteCond %{HTTP_REFERER
} !^$
RewriteCond %{HTTP_REFERER} !^http:
//(www\.)?***.com/.*$ [NC]
RewriteRule .(gif|jpg|jpeg|png|rar|zip|mp3|wma|swf)$ - [F]

SetEnvIfNoCase Referer "^http://211.66.25.176/" local_ref=1
<FilesMatch ".(txt|doc|gif|jpg|mp3)">
Order Allow,Deny
Allow from env=local_ref
Allow from 127.0.0.1
</FilesMatch>
然后在其他页面上引用这张图片就可以了

<?php
/***

分页类
20080505
***/
require_once('mysql.php');//mysql.php文件在上一篇日志
class page{
        private $url;
        private $pagesize;
        private $sql;
        private $getpage;

        //参数:sql语句,每页记录数,传递链接(例如"index.php?"或者"index.php?sort=1&"等)
    function __construct($sql,$pagesize,$url) {
                $this->url      = $url;
                $this->pagesize = $pagesize;
                $this->sql      = $sql;
                $this->getpage  = $_GET["page"];
                if(!$this->getpage) {
                        $this->getpage=1;
                }
    }
        //取记录总数
    function getcount() {
                return mysql_num_rows(mysql_query($this->sql));
    }
        //格式化sql语句
        function pagesql() {
                $nowpage    = $this->getpage;
                $limitNumber= $this->pagesize;
                if($nowpage<1) {
                        $nowpage=1;
                }
                return $this->sql." limit ".($nowpage-1)*$limitNumber.",".$limitNumber;
        }

         //显示分页,参数:显示数字链接个数,开始步进的页
    function show($page = 5,$offset = 2){
                $mpurl     = $this->url;
                $curr_page = $this->getpage;
                $perpage   = $this->pagesize;
                $num=$this->getcount();//总记录数
        $multipage = "";
        if ($num > $perpage){
            $pages = ceil($num / $perpage);
            $from = $curr_page - $offset;
            $to = $curr_page + $page - $offset - 1;
            if ($page > $pages){
                $from = 1;
                $to = $pages;
            }else{
                if ($from < 1){
                     $to = $curr_page + 1-$from;
                     $from = 1;
                     if (($to - $from) < $page && ($to - $from) < $pages){
                         $to = $page;
                     }
                }elseif ($to > $pages){
                     $from = $curr_page - $pages + $to;
                     $to = $pages;
                     if (($to - $from) < $page && ($to - $from) < $pages){
                           $from = $pages - $page + 1;
                     }
                }
            }
                    $multipage .="
                <script language=\"javascript\">
                function gotoPage(value)
                {
                        value = parseInt(value);
                        if(isNaN(value))
                        value = 0;
                        if(value<1)
                        value = 1;
                        if(value>".$pages.")
                        value = ".$pages.";
                        window.location.href = \"".$mpurl."page=\"+value;
                }
                </script>";
            $multipage .= "<div class=\"p_bar\">";
            $multipage .= "<a class=\"p_total\"> ".$num." </a>\n";
            $multipage .= "<a class=\"p_pages\"> ".$curr_page."/".$pages." </a>\n";
            if ($curr_page - $offset > 1){
                 $multipage .= "<a class=\"p_redirect\" href=\"".$mpurl."page=1\" title='首页'>«</a>\n";
            }
            for ($i = $from; $i <= $to; $i++){
                if ($i != $curr_page){
                     $multipage .= "<a class=\"p_num\" href=\"".$mpurl."page=".$i."\" title='第".$i."页'>".$i."</a>\n";
                }else{
                     $multipage .= "<a class=\"p_curpage\">".$i."</a>\n";
                }
            }
            if ($curr_page + $offset < $pages){
                  $multipage .= "<a class=\"p_redirect\" href=\"".$mpurl."page=$pages\" title='尾页'>»</a>\n";
            }
                $multipage .= "<input class=\"p_input\" title=\"输入页数,按回车跳转\" name=\"pageGo\" id=\"pageGo\" onKeydown=\"if(event.keyCode == 13) {gotoPage(this.value);return false;}\">\n";
            //$multipage .= "<a class=\"p_total\">".$perpage."条/页</a>\n";
                    $multipage .= "</div>";
        }
         return $multipage;
    }
}
?>


<?php这是一个简单的例子
if(!isset($_GET['logout'])){
     session_start();
     if(!isset($_SESSION['adminname']) or ($_SESSION['adminagent']!=md5($_SERVER['HTTP_USER_AGENT']))){
      header('location:/admin/');
      exit();
     }
}
else{
 $_SESSION=array();
 session_destroy();
 setcookie(session_name(),'',time()-300,'/','',0);
 header('location:index.php');
 exit();
}
?>
<?php
/*
  后台管理框架配置
  author:xqbar
  datetime:2008-3-29
*/
$toplink=array(0=>'账号管理','新闻管理','店铺管理','系统管理','友情链接');
$leftnav=array(
                0=>'账号管理|退出系统',
                   '新闻管理|新闻分类|退出系统',
                   '店铺管理|店铺分类|模板管理|退出系统',
                   '分类管理|地域管理|模板管理|退出系统',
                   '友情链接|退出系统'
               );
$leftlink=array(
                0=>'<a href="test/test.php" target="mainFrame">管理员</a>&nbsp;<a href="test/test.php" target="mainFrame">店铺会员</a>|<a href="checklogin.php?logout=ok" target="_top">退出管理</a>',
                   '<a href="test/test.php" target="mainFrame">所有新闻</a>&nbsp;<a href="test/test.php" target="mainFrame">添加新闻</a>@<a href="test/test.php" target="mainFrame">生成文件</a>|<a href="test/test.php" target="mainFrame">资讯分类</a>|<a href="checklogin.php" target="_top">退出管理</a>',
                   '<a href="test/test.php" target="mainFrame">所有店铺</a>&nbsp;<a href="test/test.php" target="mainFrame">添加店铺</a>|<a href="class/test.php" target="mainFrame">店铺分类</a>|<a href="test/test.php" target="mainFrame">模板列表</a>&nbsp;<a href="class/mbadd.php" target="mainFrame">添加模板</a>|<a href="checklogin.php?logout=ok" target="_top">退出管理</a>',
                   '<a href="test/test.php" target="mainFrame">新闻分类</a>&nbsp;<a href="test/test.php" target="mainFrame">店铺分类</a>|<a href="test/test.php" target="mainFrame">地域管理</a>|<a href="test/test.php" target="mainFrame">模板列表</a>&nbsp;<a href="test/test.php" target="mainFrame">添加模板</a>|<a href="checklogin.php?logout=ok" target="_top">退出管理</a>',
                   '<a href="test/test.php" target="mainFrame">连接列表</a>&nbsp;<a href="test/test.php" target="mainFrame">添加连接</a>|<a href="checklogin.php?logout=ok" target="_top">退出管理</a>'
               );                  
function topnav()
{
 global $toplink;
 $itemnum=count($toplink);
 echo '<div id="admin_header">';
 echo '<div id="admin_logo"></div>';
 echo '<div id="admin_nav">';
    echo '<ul>';
 foreach ($toplink as $key=>$value){echo "<li id='navli{$key}'><a href='javascript:navBar({$key},{$itemnum});'>$value</a></li>";}
 echo '</ul>';
 echo '</div>';
 echo '</div>';
 echo '</div>';
}
function leftnav($itemid)
{
 global $leftnav,$leftlink;
 $navtitle=explode('|',$leftnav[$itemid]);
 $navlink=explode('|',$leftlink[$itemid]);
 echo "<div id='admin_left'>";
 foreach ($navtitle as $key=>$value)
 {
  echo "<div class='navlist'>";
  echo "<h1 id='navtitle{$key}'><a href='javascript:nav({$key})'>{$value}</a></h1>";
  echo "<ul id='navlist{$key}'>";
  if(strlen(strstr($navlink[$key],"@"))>0){
   $itemlink=explode('@',$navlink[$key]);
   foreach($itemlink as $link){echo "<li>{$link}</li>";}
  }else{echo "<li>$navlink[$key]</li>";}
  echo "</ul>";
  echo "</div>";
 }
 echo "</div>";
}
if(isset($_GET['cpp'])){
 leftnav($_GET['cpp']);
}
?>

<?php
PHP代码:

<?php
$page_info = count_page($total , PER_PAGE );//分页参数
 $smarty->assign('page_first' , $page_info['page_first']);
 $smarty->assign('page_last' , $page_info['page_last']);
 $smarty->assign('page_str' , $page_info['page_str']);
 $sql = "SELECT * FROM `news` ORDER BY `id` DESC LIMIT {$page_info['offset']} , " . PER_PAGE;
?>


//PAGE : $total总页数   $per每页显示条数  $show 列表条数
function count_page($total = 0 , $per )
{
$page_out = array(
   'page_first' => '',  //首页
   'page_last'  => '',  //末页
   'page_str'  => '' ,  //分页
   'now_page'  => 1 ,  //当前页
   'offset'  => 0,  //偏移量
   );
$page_count = ceil($total / $per); //总页数
if($page_count <= 1){
  return $page_out;
}
$page_out['now_page'] = @$_GET['page'] + 0;
if($page_out['now_page'] < 1){
  $page_out['now_page'] = 1;
} elseif($page_out['now_page'] > $page_count){
  $page_out['now_page'] = $page_count;
}

$page_out['offset'] = ($page_out['now_page'] - 1) * $per;
//URL正则
$SELF = "[url=http://{$_SERVER[]http://{$_SERVER['HTTP_HOST']}{$_SERVER['PHP_SELF'[/url]]}?";
@$QUERY = $_SERVER['QUERY_STRING'];
$query_page = preg_replace(array("!((&|^)page=([^&]+))|(page=)!" , "!(^&)|[&]{2,}|([&]$)!") , array('' , '') , $QUERY);
$query_page = $SELF . $query_page . ($query_page ? "&" : "");
/*first page*/
$page_out['page_first'] = '1';
if($page_out['page_first'] == $page_out['now_page']){
  $page_out['page_first'] = '<li class="previous-off"><<首页</li>';
}else{
  $page_out['page_first'] = '<li><a href="?page=1"><<首页</a></li>';
}
/*last page*/
$page_out['page_last'] = $page_count;
if($page_out['page_last'] == $page_out['now_page']){
  $page_out['page_last'] = '<li class="next-off"">尾页>></li>';
}else{
  $page_out['page_last'] = '<li><a href="?page=' . $page_count. '">尾页>></a></li>';
}
//限制分页 2008-6-2 Edit
$pageleft = $page_out['now_page'] >= 4 ? $page_out['now_page'] - 4 : 1;
$pageright = $page_out['now_page'] + 4 <= $page_count ? $page_out['now_page'] + 4 : $page_count;

for($i = $pageleft; $i <= $pageright; $i++) {
  if($i == $page_out['now_page']){
   $page_out['page_str'] .= '<li class="active">' . $i . '</li>';
  } else {
   $page_out['page_str'] .= '<li><a href="' . $query_page . 'page=' . $i . '">' . $i . '</a></li>';
  }
}
return $page_out;
}
?>


复制PHP内容到剪贴板
PHP代码:
CSS  文件

/*PAGE*/
#page li { border:0; margin:0; padding:0; font-size:11px; list-style:none; /* savers */ float:left; }
#page a { border:solid 1px #9aafe5; margin-right:2px; }
#page .previous-off,#page .next-off { border:solid 1px #DEDEDE; color:#888888; display:block; float:left; font-weight:bold; margin-right:2px; padding:3px 4px; }
#page .next a,#page .previous a { font-weight:bold; }
#page .active     { background:#2e6ab1; color:#FFFFFF; font-weight:bold; display:block; float:left; padding:4px 6px; /* savers */ margin-right:2px; }
#page a:link,#page a:visited  { color:#0e509e; display:block; float:left; padding:3px 6px; text-decoration:none; }
#page a:hover{ border:solid 1px #0e509e; }

[!--infotagslink--]

相关文章

  • 使用PHP+JavaScript将HTML页面转换为图片的实例分享

    这篇文章主要介绍了使用PHP+JavaScript将HTML元素转换为图片的实例分享,文后结果的截图只能体现出替换的字体,也不能说将静态页面转为图片可以加快加载,只是这种做法比较interesting XD需要的朋友可以参考下...2016-04-19
  • C#开发Windows窗体应用程序的简单操作步骤

    这篇文章主要介绍了C#开发Windows窗体应用程序的简单操作步骤,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-04-12
  • php抓取网站图片并保存的实现方法

    php如何实现抓取网页图片,相较于手动的粘贴复制,使用小程序要方便快捷多了,喜欢编程的人总会喜欢制作一些简单有用的小软件,最近就参考了网上一个php抓取图片代码,封装了一个php远程抓取图片的类,测试了一下,效果还不错分享...2015-10-30
  • C#从数据库读取图片并保存的两种方法

    这篇文章主要介绍了C#从数据库读取图片并保存的方法,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下...2021-01-16
  • Photoshop古装美女图片转为工笔画效果制作教程

    今天小编在这里就来给各位Photoshop的这一款软件的使用者们来说说把古装美女图片转为细腻的工笔画效果的制作教程,各位想知道方法的使用者们,那么下面就快来跟着小编一...2016-09-14
  • Python 图片转数组,二进制互转操作

    这篇文章主要介绍了Python 图片转数组,二进制互转操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-09
  • C++调用C#的DLL程序实现方法

    本文通过例子,讲述了C++调用C#的DLL程序的方法,作出了以下总结,下面就让我们一起来学习吧。...2020-06-25
  • 利用JS实现点击按钮后图片自动切换的简单方法

    下面小编就为大家带来一篇利用JS实现点击按钮后图片自动切换的简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2016-10-25
  • 源码分析系列之json_encode()如何转化一个对象

    这篇文章主要介绍了源码分析系列之json_encode()如何转化一个对象,对json_encode()感兴趣的同学,可以参考下...2021-04-22
  • php中去除文字内容中所有html代码

    PHP去除html、css样式、js格式的方法很多,但发现,它们基本都有一个弊端:空格往往清除不了 经过不断的研究,最终找到了一个理想的去除html包括空格css样式、js 的PHP函数。...2013-08-02
  • 微信小程序 页面传值详解

    这篇文章主要介绍了微信小程序 页面传值详解的相关资料,需要的朋友可以参考下...2017-03-13
  • jquery左右滚动焦点图banner图片鼠标经过显示上下页按钮

    jquery左右滚动焦点图banner图片鼠标经过显示上下页按钮...2013-10-13
  • js实现上传图片及时预览

    这篇文章主要为大家详细介绍了js实现上传图片及时预览的相关资料,具有一定的参考价值,感兴趣的朋友可以参考一下...2016-05-09
  • C#使用Process类调用外部exe程序

    本文通过两个示例讲解了一下Process类调用外部应用程序的基本用法,并简单讲解了StartInfo属性,有需要的朋友可以参考一下。...2020-06-25
  • Photoshop枪战电影海报图片制作教程

    Photoshop的这一款软件小编相信很多的人都已经是使用过了吧,那么今天小编在这里就给大家带来了用Photoshop软件制作枪战电影海报的教程,想知道制作步骤的玩家们,那么下面...2016-09-14
  • 微信小程序二维码生成工具 weapp-qrcode详解

    这篇文章主要介绍了微信小程序 二维码生成工具 weapp-qrcode详解,教大家如何在项目中引入weapp-qrcode.js文件,通过实例代码给大家介绍的非常详细,需要的朋友可以参考下...2021-10-23
  • 使用GruntJS构建Web程序之构建篇

    大概有如下步骤 新建项目Bejs 新建文件package.json 新建文件Gruntfile.js 命令行执行grunt任务 一、新建项目Bejs源码放在src下,该目录有两个js文件,selector.js和ajax.js。编译后代码放在dest,这个grunt会...2014-06-07
  • uniapp微信小程序:key失效的解决方法

    这篇文章主要介绍了uniapp微信小程序:key失效的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-20
  • index.php怎么打开?如何打开index.php?

    index.php怎么打开?初学者可能不知道如何打开index.php,不会的同学可以参考一下本篇教程 打开编辑:右键->打开方式->经文本方式打开打开运行:首先你要有个支持运行PH...2017-07-06
  • python opencv通过4坐标剪裁图片

    图片剪裁是常用的方法,那么如何通过4坐标剪裁图片,本文就详细的来介绍一下,感兴趣的小伙伴们可以参考一下...2021-06-04