Home > php教程 > PHP源码 > body text

图片上传管理

PHP中文网
Release: 2016-05-25 17:11:51
Original
1437 people have browsed it

1.图片上传

一开始页面
 
<script type="text/javascript">
/*
打开window oper
*/
function dopic(url,height,width)
{
    return window.open(url,&#39;图片上传管理&#39;,"height="+height+",width="+height+",top=50,left=100,toolbar=no,menubar=no,scrollbars=yes,resizable=no,location=no,status=no");
    }
 
//上传图片JS获取图片信息
function dianji(v)
{
    document.getElementById(&#39;pic&#39;).value=v;
    document.getElementById("show").innerHTML=&#39;<img src=\"&#39; + v + &#39;\") onload="javascript:if(this.width>200)this.width=200;">&#39;;
}
</script>
 
<input name="pic" id="pic" type="text" value="" style="width:300px;"/>
        <input name="uploadpic" type="button" id="imgFile" value="上 传" onclick="return dopic(&#39;upload.php&#39;,500,400);"/>
        <div id="show"></div>
Copy after login

2.upload.php

<?php
session_start();
if(!isset($_SESSION[&#39;username&#39;])){echo "<script>alert(&#39;Please Login !&#39;);location.href=&#39;login.php&#39;;</script>";}
?>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
#mydiv{ width:460px; height:360px;}
ul{
    width:450px;}
li{
    list-style-type:none; float:left; padding:4px;
    }
li img{
     cursor:pointer; border:2px #CCC groove}
li img:hover{
    cursor:pointer; border:2px #F00 groove}
.del{
    padding-left:30px;} 
.del a{
    text-decoration:none;
    color:#999;
    font-size:13px;}
.del a:hover{
    text-align:center;
    text-decoration:underline;
    background:#F00}
     
#changpage{
    text-align:center; margin-top:10px;}
#changpage a{
    color:#000; text-decoration:none}
#changpage a:hover{
    color:#F00; text-decoration:underline}
#up{
    text-align:center;
    background:#CCC;
    margin-top:10px;}
.top{
    color:#F00;
    font-size:12px;
    font-weight:bold;}
</style>
<script type="text/javascript">
function qd(v)
{
    window.opener.dianji(v);
    window.close();
    }
</script>
<script type="text/javascript" src="base/scripts/erp.js"></script>
<?php
if($_GET[&#39;del&#39;])
{
    $dir = &#39;upload/&#39;;
    if($fileopen = opendir($dir))
    {
        @unlink($dir.$_GET[&#39;del&#39;]);
        }
    }
?>
<div class="top">如果要使用以经上传的图片,请【单击】你需要的图片</div>
<div id="mydiv"><ul> 
<?php 
$resPath = &#39;upload/&#39;;
if ($dh = opendir($resPath))
{
 while (($file = readdir($dh)) !== false)
 {
  if($file !=&#39;.&#39; and $file !=&#39;..&#39; and end(explode(&#39;.&#39;,$file))!=&#39;db&#39;)
  {
   echo "<li><img src=".$resPath.$file." width=\"120px\" height=\"140px\" title=&#39;左击调用图片&#39; onclick=\"return qd(&#39;".$resPath.$file."&#39;);\"><br><span class=\"del\"><a onclick=\"return del(&#39;".$file."&#39;);\" href=\"upload.php?del=".$file."\" >【删除】</a></span></li>";
  }
 }
 closedir($dh);
}
?></ul>
</div> 
<div style="clear:both"></div>
<div id="changpage"></div> 
<div id="up">
<form id="upForm" action="upload_send.php" method="post" enctype="multipart/form-data" onsubmit="return startUpload();"> 
<input type="file" name="myfile" id="myfile" /> <input type="submit" name="submitBtn" value="确定上传" /> 
</form>
</div>
<script> 
var obj,j; 
var page=0; 
var nowPage=0;//当前页 
var listNum=6;//每页显示<ul>数 
var PagesLen;//总页数 
var PageNum=4;//分页链接接数(5个) 
onload=function(){ 
obj=document.getElementById("mydiv").getElementsByTagName("li"); 
j=obj.length 
PagesLen=Math.ceil(j/listNum); 
upPage(0) 
} 
function upPage(p){ 
nowPage=p 
//内容变换 
for (var i=0;i<j;i++){ 
obj[i].style.display="none"
} 
for (var i=p*listNum;i<(p+1)*listNum;i++){ 
if(obj[i])obj[i].style.display="block"
} 
//分页链接变换 
strS=&#39;<a href="###" onclick="upPage(0)">首页</a>  &#39;
var PageNum_2=PageNum%2==0?Math.ceil(PageNum/2)+1:Math.ceil(PageNum/2) 
var PageNum_3=PageNum%2==0?Math.ceil(PageNum/2):Math.ceil(PageNum/2)+1 
var strC="",startPage,endPage; 
if (PageNum>=PagesLen) {startPage=0;endPage=PagesLen-1} 
else if (nowPage<PageNum_2){startPage=0;endPage=PagesLen-1>PageNum?PageNum:PagesLen-1}//首页 
else {startPage=nowPage+PageNum_3>=PagesLen?PagesLen-PageNum-1: nowPage-PageNum_2+1;var t=startPage+PageNum;endPage=t>PagesLen?PagesLen-1:t} 
for (var i=startPage;i<=endPage;i++){ 
if (i==nowPage)strC+=&#39;<a href="###" style="color:red;font-weight:700;" onclick="upPage(&#39;+i+&#39;)">&#39;+(i+1)+&#39;</a> &#39;
else strC+=&#39;<a href="###" onclick="upPage(&#39;+i+&#39;)">&#39;+(i+1)+&#39;</a> &#39;
} 
strE=&#39; <a href="###" onclick="upPage(&#39;+(PagesLen-1)+&#39;)">尾页</a>  &#39;
strE2=nowPage+1+"/"+PagesLen+"页"+"  共"+j+"条"
document.getElementById("changpage").innerHTML=strS+strC+strE+strE2 
} 
</script>
Copy after login

3.upload_send.php

<?php
session_start();
if(!isset($_SESSION[&#39;username&#39;])){echo "<script>alert(&#39;Please Login !&#39;);location.href=&#39;login.php&#39;;</script>";}
if($_FILES[&#39;myfile&#39;]){
 
function uploadFile($file)
 
{     //上传路径 
    $destinationPath = "upload/";  
    if (!file_exists($destinationPath)){mkdir($destinationPath,0777);}  
     
    //命名后面部份随机;
    $str = &#39;0123456789abcdefghijklmnopqrstuvwsyzABCDEFGHIJKLOMNOPQRSTUVWXYZ&#39;;
    $a = strlen($str);
        for($i=1;$i<6;$i++)
        {
            $a = rand(&#39;0&#39;,$a-1);
            $string.=substr($str,$a,1); 
        }
     
    //分割原来图片实名
    $name = end(explode(&#39;.&#39;,iconv(&#39;utf-8&#39;,&#39;gb2312&#39;,basename($file[&#39;name&#39;]))));
     
    //重命名,实名iconv(&#39;utf-8&#39;,&#39;gb2312&#39;,basename($file[&#39;name&#39;]))   
    $fileName = date(&#39;YmdHis&#39;).$string.".".$name;
     
    if (@move_uploaded_file($file[&#39;tmp_name&#39;],$destinationPath.$fileName)){ 
        return iconv(&#39;gb2312&#39;,&#39;utf-8&#39;,$fileName);
        }
    }
     
    function readFromFile($target_path)
     
        //读取文件内容 
        {
        $file = fopen($target_path,&#39;rb&#39;) or die("unable to open file");
        $fileContent = &#39;&#39;;
            while(!feof($file)){ 
                $str = fgets($file);
                $fileContent .= $str; 
            }fclose($file); 
       return $fileContent;}
     
    if($_FILES[&#39;myfile&#39;][&#39;name&#39;] == &#39;&#39;){echo "<script>alert(&#39;Don\&#39;t NULL&#39;);history.back();</script>";exit();}
     
    $file = $_FILES[&#39;myfile&#39;];
    $type = $_FILES[&#39;myfile&#39;][&#39;type&#39;];
    $size = $_FILES[&#39;myfile&#39;][&#39;size&#39;];
     
    if($size/1000 > 100){echo "<script>alert(&#39;Image Too Big&#39;);history.back();</script>";exit();}
     
    if($type != "image/jpeg" || $type != "image/png" || $type != "image/gif")
        {
            echo "<script>alert(&#39;Image Format Error&#39;);history.back();</script>";
            exit;
        }
         
    $pic = &#39;upload/&#39;;
    $fileName = uploadFile($file);
    $result = readFromFile($pic.$fileName);
    $img = "<img src=".$pic.$fileName.">";
    echo "<script>window.opener.dianji(&#39;".$pic.$fileName."&#39;);window.close();</script>";
}
Copy after login

6.jpg6.jpg

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!