• 技术文章 >后端开发 >php教程

    php实现上传图片客户端和服务器端的方法

    墨辰丷墨辰丷2018-06-11 17:59:53原创989
    这篇文章主要介绍了php上传图片客户端和服务器端实现方法,涉及php操作文件的技巧,涉及图片后缀验证、文件重命名等常用方法,具有一定参考借鉴价值,需要的朋友可以参考下

    本文实例讲述了php上传图片客户端和服务器端实现方法。具体如下:

    前台表单代码

    <form name="form1" method="post" action="admin_upfile.php" enctype="multipart/form-data">
      <input type="file" name="pic">
      <input type="submit" name="Submit" value="开始上传" class="button">
    </form>

    后端php代码

    <?php
    //这里上传 $upsize判断上传文件的大小
    $uppath = "/attached/"; //文件上传路径
    //转换根目录的路径
    if (strpos($uppath, "/") == 0)
    {
      $i = 0;
      $thpath = $_SERVER["SCRIPT_NAME"];
      $thpath = substr($thpath, 1, strlen($thpath));
      while (strripos($thpath, "/") !== false)
      {
     $thpath = substr($thpath, strpos($thpath, "/") + 1, strlen($thpath));
     $i = ++$i;
      }
      $pp = "";
      for ($j = 0; $j < $i; ++$j)
      {
     $pp .= "../";
      }
      $uppaths = $pp . substr($uppath, 1, strlen($thpath));
    }
    $filename = date("y-m-d");
    if (is_dir($uppaths . $filename) != TRUE)
      mkdir($uppaths . $filename, 0777);
    $f = $_FILES['pic'];
    if ($f["type"] != "image/gif" && $f["type"] != "image/pjpeg" && $f["type"] != "image/jpeg" && $f["type"] != "image/x-png")
    {
      echo "<script>alert('只能上传图片格式的文件');window.close()</script>";
      return false;
    }
    //获得文件扩展名
    $temp_arr = explode(".", $f["name"]);
    $file_ext = array_pop($temp_arr);
    $file_ext = trim($file_ext);
    $file_ext = strtolower($file_ext);
    //新文件名
    $new_file_name = md5(date("YmdHis")) . '.' . $file_ext;
    echo $dest = $uppaths . $filename . "/" . date("ymdhis") . "_" . 
    $new_file_name; //设置文件名为日期加上文件名避免重复 上传目录
    echo $dest1 = $uppath . $filename . "/" . date("ymdhis") . "_" . 
    $new_file_name; //设置文件名为日期加上文件名避免重复
    $r = move_uploaded_file($f['tmp_name'], $dest);
    ?>

    总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

    相关推荐:

    php模板与js上传插件结合实现无刷新上传的方法

    php数字及数字运算验证码

    php采用链式调用的方式连续调用函数的使用方法

    以上就是php实现上传图片客户端和服务器端的方法的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:PHP基于dir类实现目录遍历删除 下一篇:$.ajax+php实战教程之下拉时自动加载更多文章原理讲解
    20期PHP线上班

    相关文章推荐

    精选22门好课,价值3725元,开通VIP免费学习!• php中利用反照访问类私有方法• PHP中对缓冲区的统制实现代码• (高分)为何这段代码不能实现文件下载• 10位一等PHP大师的开发原则• PHP开发惯用函数和必须会的函数总结 -带例子
    1/1

    PHP中文网