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

墨辰丷
墨辰丷 原创
2023-03-31 16:36:01 1267浏览

这篇文章主要介绍了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核实处理。