PHP WAMP 文件上传 及 简单的上传预览

、、、、、、

  使用特殊的表单类型file,

主(上传)页面:

<form action="chuli.php" method="post" enctype="multipart/form-data">
 <input type="file" name="file" />
    <input type="submit" value="上传" />
、、、、、、、、、、、、、、、、、、、、、、、</form>

处理页面:

//var_dump($_FILES);

//1.判断是否出错
//2.控制上传的格式
//3.控制上传文件的大小
//4.控制文件名不能重复(如果重复不能上传)
//怎么让文件名不重复
 //1.文件名自动生成
 //2.使用文件夹的方式
 
//5.保存文件

if(!$_FILES["file"]["error"])
{
 if($_FILES["file"]["type"]=="image/jpeg" && $_FILES["file"]["size"]<=1024000)
 {
  $filename = "./file/".date("YmdHis").$_FILES["file"]["name"];
  $filename = iconv("UTF-8","gb2312",$filename);   //将文件名


  
  if(!file_exists($filename))
  {
   //上传
   move_uploaded_file($_FILES["file"]["tmp_name"],$filename);
  }
  else
  {
   echo "该文件已存在";
  }
 }
 else
 {
  echo "文件格式或大小不对";
 }
}
else
{
 echo $_FILES["file"]["error"];
}

 

上传预览:

主页面:

<body>
<form id="sc" action="shangchuan.php" target="hidden_frame" method="post" enctype="multipart/form-data">
    <div id="yl" style="margin-left:0px; width:144px; height:170px; background-size:144px 170px; background-image:url(../chexiangqing/images/22.jpg)">
        <input type="file" name="file" style="width:144px; height:170px; float:left; opacity:0;" width="146" onchange="document.getElementById('sc').submit()"/>
       
    </div>
    <input type="button" value="保存"/>
</form>
<iframe style="display:none;" name="hidden_frame" id="hidden_frame">
</iframe>

</body>           
<script type="text/javascript">
//回调函数
function showimg(aa)
{
    var l = document.getElementById("yl");
    l.style.backgroundImage = "url("+aa+")";
}
</script>

处理页面:

<?php
   //上传文件限制
   if ((($_FILES["file"]["type"] == "image/gif")|| ($_FILES["file"]["type"] == "image/jpeg")|| ($_FILES["file"]["type"] == "image/png"))&& ($_FILES["file"]["size"] < 10000000))
  {
      //文件上传是否出错
      if ($_FILES["file"]["error"] > 0)
    {
        echo "上传出错: " . $_FILES["file"]["error"] . "<br />";
    }
      else
    {
        
    
    //判断文件是否已存在
    $filename = "images/".$_FILES["file"]["name"];
    $filename = iconv("UTF-8","gb2312",$filename);
     
    if (file_exists($filename))
      {
          echo "<script language='javascript'>alert('文件已经存在!')</script>";
           
      }
    else
      {
          //移动图片至保存路径,解决中文乱码问题
            move_uploaded_file($_FILES["file"]["tmp_name"],$filename);

          echo "<script language='javascript'>parent.showimg('".$filename."')</script>";
      }
    }
  }
  else
  {
      echo "上传失败";
  }

?>

 

posted @ 2016-11-21 10:30  不见晨曦的占星师  阅读(1195)  评论(0编辑  收藏  举报