首頁 >後端開發 >php教程 >php實作上傳圖片客戶端和伺服器端的方法

php實作上傳圖片客戶端和伺服器端的方法

墨辰丷
墨辰丷原創
2018-06-11 17:59:531835瀏覽

這篇文章主要介紹了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[&#39;pic&#39;];
if ($f["type"] != "image/gif" && $f["type"] != "image/pjpeg" && $f["type"] != "image/jpeg" && $f["type"] != "image/x-png")
{
  echo "<script>alert(&#39;只能上传图片格式的文件&#39;);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")) . &#39;.&#39; . $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[&#39;tmp_name&#39;], $dest);
?>

總結:以上就是本篇的全部內容,希望能對大家的學習有幫助。

相關推薦:

php範本與js上傳外掛程式結合實作無刷新上傳的方法

php數字及數字運算驗證碼

php採用鍊式呼叫的方式連續呼叫函數的使用方法

以上是php實作上傳圖片客戶端和伺服器端的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn