zoukankan      html  css  js  c++  java
  • 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; 144px; height:170px; background-size:144px 170px; background-image:url(../chexiangqing/images/22.jpg)">
            <input type="file" name="file" style="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 "上传失败";
      }
    
    ?>
  • 相关阅读:
    实现多项式相加或相减
    Node.js对28181的管理
    mssql版本对应的版本号
    Asp.net移除Server, XPoweredBy, 和XAspNetVersion头
    开源的图表控制,winform
    .NET 4.0里异常处理的新机制
    asp.net windows 域账号登录
    SpringCloud2.0 Zuul 网关路由 基础教程(十)
    SpringCloud2.0 Hystrix Dashboard 断路器指标看板 基础教程(八)
    SpringCloud2.0 Turbine 断路器集群监控 基础教程(九)
  • 原文地址:https://www.cnblogs.com/bujianchenxi/p/6084548.html
Copyright © 2011-2022 走看看