首頁 >後端開發 >php教程 >php 檔案上傳(普通上傳與非同步上傳)的例子

php 檔案上傳(普通上傳與非同步上傳)的例子

WBOY
WBOY原創
2016-07-25 08:56:451418瀏覽
複製程式碼
  1. 檔案名:標籤>

複製程式碼

2,upload_file.php

  1. //php普通檔案上傳
  2. //by bbs.it-home.org
  3. if (( ( $_FILES["檔案"]["類型"] == "圖片/gif")|| ($_FILES["檔案"]["類型"] == "映像/jpeg")|| ($_FILES[ " file"]["type"] == "image/pjpeg"))&& ($_FILES["file"]["size"] if ($_FILES["file"] [“錯誤”] > 0) {
  4. echo "回傳代碼:" . $_FILES["檔案"]["錯誤"] 。 “
    ”;
  5. }else {
  6. echo "上傳:" . $_FILES["檔案"]["名稱"] 。 “
    ”;
  7. 回顯“類型:”。 $_FILES["檔案"]["類型"] 。 “
    ”;
  8. 回顯“尺寸:”。 ($_FILES["檔案"]["大小"] / 1024) 。 “Kb
    ”;
  9. echo "暫存檔:" 。 $_FILES["檔案"]["tmp_name"] 。 “
    ”;
  10. if (file_exists("upload/" . $_FILES["file"]["name"])){
  11. echo $_FILES["file"][" name"] . “已經存在。 "name"]);
  12. echo 「儲存在:」。 “上傳/”。 $_FILES["檔案"]["名稱"];
  13. }
  14. }
  15. }else {
  16. echo "無效檔案";
  17. }
  18. ?>
  19. ?>
  20. ? >
複製程式碼
二、非同步檔案上傳 使用iframe上傳文件。 1,前端html

  1. 導入檔案:
  2. 表格>
複製程式碼
2,Js程式碼

    function startUpload() {
  1. var spanObj = document.getElementById("info");
  2. spanOb.
  3. document.getElementById("upForm").sumbit();
  4. }
  5. //回呼
  6. function stopUpload(responseText){
  7. var spanObj = document.getElementByText("");
  8. spanObj.innerHTML = "上傳成功";
  9. spanObj.innerHTML = responseText;
  10. }
複製代碼

2)、伺服器端程式碼

  1. $file = $_FILES['myfile'];

  2. $fileName = uploadFile($ file);
  3. //$result = readFromFile("../upload/" . $fileName);
  4. echo "";
  5. function uploadFile($file) {
  6. // 上傳路徑
  7. $destinationPath = "../upload/";
  8. if ( !file_exists($destinationPath)){
  9. mkdir($destinationPath , 0777);
  10. }
  11. //重命名
  12. $fileName = date('YmdHis') . '_' . utf-8' , 'gb2312' , basename($file['name']));
  13. if (move_uploaded_file($file['tmp_name'], $destinationPath . $fileName)) {
  14. return iconv( 'gb2312' , 'utf-8' , $fileName);
  15. }
  16. return '';
  17. }
  18. //程式碼註解

  19. /*
  20. //程式碼註解

  21. /*
  22. 1,關於basename方法
  23. $path = "/testweb/home.php";
  24. //顯示帶有檔案副檔名的檔案名稱
  25. echo basename($path);
  26. //顯示不含檔案副檔名的檔案名稱
  27. echo basename($path,".php");
  28. 2,關於iconv
  29. iconv('gb2312' , 'utf-8' , $fileName);//將$fileName從gb2312轉為utf-8格式。
  30. 註:函數需要開啟php.ini裡面的php_iconv.dll
  31. 3,關於$_FILES['myfile']
  32. $_FILES相當於一個二維數組,而$_FILES[' myfile']相當於一個一維數組。所以可以
  33. $f = $_FILES['myfile'];
  34. echo $f['name'];
  35. 如果直接存取該$_FILES['myfile'],則會報Undefined index: myfile。此時加上
  36. if(!isset($_FILES['myfile'])){
  37. die('上傳檔案不存在!');
}
*/


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