振鐸四十週年影音儲存

出自六年制學程
跳轉到: 導覽搜尋

檔案上傳機制

  1. 恩濡參考以下資料來源製作「檔案上傳試用網頁」:
  2. 需準備的檔案:
    1. 前台上傳介面:html檔案
    2. 後台工作程式:php檔案
    3. 檔案目的地資料夾:要從網頁「根目錄」下新增資料夾,讓上傳的檔案有地方去
  • 主要程式碼:
  1. html:
    <html><body>
    <form method="post" enctype="multipart/form-data" action="upload.php">
           <input type="file" name="my_file">
           <input type="submit" value="Upload">
    </form>
    </body></html>
  2. php:
    <?php
       if($_FILES["my_file"]['error']>0){
       echo 'Error'.$_FILES.['my_file']['error'];
       }else {
        echo "檔案名稱" .$_FILES['my_file']['name']."<br/>";
        echo "檔案類型" .$_FILES['my_file']['type']."<br/>";
        echo "檔案大小" .($_FILES['my_file']['size']/1024)."Kb<br/>";
        echo "暫存名稱" .$_FILES['my_file']['tmp_name'];
    
        if(file_exists('uploadPractice/'.$_FILES['my_file']['name'])){
         echo "檔案已經存在囉";
         }else{
          move_uploaded_file($_FILES['my_file']['tmp_name'],'uploadPractice/'.$_FILES['my_file']['name']);
         }
       }
    ?>
    • 了解各程式碼代表的意義:
      • $_FILES["file"]["name"]:上傳檔案的原始名稱。
      • $_FILES["file"]["type"]:上傳的檔案類型。
      • $_FILES["file"]["size"]:上傳的檔案原始大小。
      • $_FILES["file"]["tmp_name"]:上傳檔案後的暫存資料夾位置。
      • $_FILES["file"]["error"]:如果檔案上傳有錯誤,可以顯示錯誤代碼。
      • move_uploaded_file 是一個函式function,能幫我們移動檔案到預計的目的地,也就是括號變數裡的目的資料夾。
      • file_exists()是一個函式function,能幫我們檢查上傳的檔案是否已經存在。(搭配if,else程式碼來設定)
    • 要注意目的地資料夾是否有開放前台寫入的權限。