振鐸四十週年影音儲存:修訂版本之間的差異
出自六年制學程
(→檔案上傳機制) |
(→檔案上傳機制) |
||
(未顯示同用戶所作出之20次版本) | |||
第 3 行: | 第 3 行: | ||
#恩濡參考以下資料來源製作「檔案上傳試用網頁」: | #恩濡參考以下資料來源製作「檔案上傳試用網頁」: | ||
#*主要程式碼參考網頁:[https://www.webtech.tw/info.php?tid=24 PHP上傳檔案,透過 PHP $_FILES 陣列輕鬆上傳檔案] | #*主要程式碼參考網頁:[https://www.webtech.tw/info.php?tid=24 PHP上傳檔案,透過 PHP $_FILES 陣列輕鬆上傳檔案] | ||
− | #*補充資料:[https://huang2387.pixnet.net/blog/post/301541795-%E3%80%90%E7%B6%93%E9%A9%97%E3%80%91php-【經驗】php-檔案上傳-步驟教學] | + | #*主要程式碼參考網頁:[https://blog.gtwang.org/programming/php-upload-files-tutorial/ PHP 上傳檔案程式設計教學,$_FILES 多檔案用法] |
− | #* | + | #*主要html程式碼:[https://pjchender.dev/webapis/webapis-file-input/ WebAPIs:檔案上傳 Input File, File Upload, and FileList] |
+ | #*補充資料:[https://huang2387.pixnet.net/blog/post/301541795-%E3%80%90%E7%B6%93%E9%A9%97%E3%80%91php-【經驗】php-檔案上傳-步驟教學 【經驗】php-檔案上傳-步驟教學] | ||
+ | #需準備的檔案: | ||
+ | ##前台上傳介面:html檔案 | ||
+ | ##後台工作程式:php檔案 | ||
+ | ##檔案目的地資料夾:要從網頁「根目錄」下新增資料夾,讓上傳的檔案有地方去 | ||
+ | *主要程式碼: | ||
+ | <ol> | ||
+ | <li>html: | ||
+ | <pre><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></pre></li> | ||
+ | <li>php:<pre><?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']); | ||
+ | } | ||
+ | } | ||
+ | ?></pre></li> | ||
+ | *了解各程式碼代表的意義: | ||
+ | **$_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程式碼來設定) | ||
+ | |||
+ | *要注意目的地資料夾是否有開放前台寫入的權限。 |
2022年6月10日 (五) 15:39的最新修訂版本
檔案上傳機制
- 恩濡參考以下資料來源製作「檔案上傳試用網頁」:
- 主要程式碼參考網頁:PHP上傳檔案,透過 PHP $_FILES 陣列輕鬆上傳檔案
- 主要程式碼參考網頁:PHP 上傳檔案程式設計教學,$_FILES 多檔案用法
- 主要html程式碼:WebAPIs:檔案上傳 Input File, File Upload, and FileList
- 補充資料:【經驗】php-檔案上傳-步驟教學
- 需準備的檔案:
- 前台上傳介面:html檔案
- 後台工作程式:php檔案
- 檔案目的地資料夾:要從網頁「根目錄」下新增資料夾,讓上傳的檔案有地方去
- 主要程式碼:
- 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>
- 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程式碼來設定)
- 要注意目的地資料夾是否有開放前台寫入的權限。