PHP 上傳檔案
要用php上傳檔案要注意三點。
1. 準備上傳的介面(html)
2. 後台處理(php)
3. 移動上傳後的檔案
然後準備這樣的html
接著建立一個資料夾來放上傳後的檔案,這樣其他使用者才看的到,在這裡建立一個名稱為"upload"的資料夾。
接著建立一個處理上傳檔案的php,稍微了解一下各個代表的意思,$_FILES後面接的第一個值是這個form的name,因為我的name是取file,所以裡面的值就是file。
$_FILES["file"]["name"]:上傳檔案的原始名稱。
$_FILES["file"]["type"]:檔案類型。
$_FILES["file"]["size"]:檔案原始大小。
$_FILES["file"]["tmp_name"]:上傳檔案後的暫存資料夾位置。
$_FILES["file"]["error"]:如果檔案上傳有錯誤,可以顯示錯誤代碼。
撰寫php
可以加這具判斷是否有檔案,有檔案再做以上的處理
更多說明:
file_exists
move_uploaded_file
1. 準備上傳的介面(html)
2. 後台處理(php)
3. 移動上傳後的檔案
然後準備這樣的html
<form action="upload.php" method="post" enctype="multipart/form-data">
選取檔案: <input type="file" name="file" id="file">
<input type="submit">
</form>
input type="file" 就是用來選取檔案的。接著建立一個資料夾來放上傳後的檔案,這樣其他使用者才看的到,在這裡建立一個名稱為"upload"的資料夾。
接著建立一個處理上傳檔案的php,稍微了解一下各個代表的意思,$_FILES後面接的第一個值是這個form的name,因為我的name是取file,所以裡面的值就是file。
$_FILES["file"]["name"]:上傳檔案的原始名稱。
$_FILES["file"]["type"]:檔案類型。
$_FILES["file"]["size"]:檔案原始大小。
$_FILES["file"]["tmp_name"]:上傳檔案後的暫存資料夾位置。
$_FILES["file"]["error"]:如果檔案上傳有錯誤,可以顯示錯誤代碼。
撰寫php
- <?php
- if ($_FILES["file"]["error"] > 0){
- echo "Error: " . $_FILES["file"]["error"];
- }else{
- echo "檔案名稱: " . $_FILES["file"]["name"]."<br/>";
- echo "檔案類型: " . $_FILES["file"]["type"]."<br/>";
- echo "檔案大小: " . ($_FILES["file"]["size"] / 1024)." Kb<br />";
- echo "暫存名稱: " . $_FILES["file"]["tmp_name"];
- //判斷是否有重覆檔名
- if (file_exists("upload/" . $_FILES["file"]["name"])){
- echo "已有相同檔名存在";
- }else{
- //移動檔案到放圖片的資料夾,並將檔名命名為原始的檔名
- move_uploaded_file($_FILES["file"]["tmp_name"],"upload/".$_FILES["file"]["name"]);
- }
- }
- ?>
可以加這具判斷是否有檔案,有檔案再做以上的處理
- if(isset($_FILES["file"]))
更多說明:
file_exists
move_uploaded_file
留言