php獲取form表單文件域的值


文件域的作用是實現文件或圖片的上傳。文件域有一個特有的屬性,用於指定上傳的文件類型,如果需要顯示上傳文件的類型,則可以通過設置該屬性來完成。

 

在實現開發過程中,文件或者圖片上傳在一些網站應用中是必不可少的一部分。比如個人博客上傳個性頭像,一些論壇分享好的學習資料等等,這就涉及到使用表單處理文件上傳的知識,在php中 我們可以使用$_FILES這個全局數組來處理。下面就看看基本的文件上傳處理部分。首先要說明的,能夠上傳文件必定是一個安全隱患,所以在開發這部分功能時,一定要注意網站的安全性。而在這里所探討的只是基本的文件上傳部分,提供的是PHP文件上傳基本的知識,讓朋友們了解最簡單的原理和代碼知識,關於安全性這方面考慮的較少。

$_FILES:經由 HTTP POST 文件上傳而提交至腳本的變量。直線電機生產廠家

$_FILES數組內容如下:

$_FILES['myFile']['name'] 客戶端文件的原名稱。

$_FILES['myFile']['type'] 文件的 MIME 類型,需要瀏覽器提供該信息的支持,例如"image/gif"。

$_FILES['myFile']['size'] 已上傳文件的大小,單位為字節。

$_FILES['myFile']['tmp_name'] 文件被上傳后在服務端儲存的臨時文件名,一般是系統默認。可以在php.ini的upload_tmp_dir 指定,但用 putenv() 函數設置是不起作用的。

$_FILES['myFile']['error'] 和該文件上傳相關的錯誤代碼。['error'] 是在 PHP 4.2.0 版本中增加的。

$_FILES["file"]["error"]中的["error"]值情況:

UPLOAD_ERR_OK 值:0; 沒有錯誤發生,文件上傳成功

UPLOAD_ERR_INI_SIZE 值:1; 上傳的文件超過了 php.ini 中 upload_max_filesize選項限制的值

UPLOAD_ERR_FORM_SIZE 值:2;上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項指定的值

UPLOAD_ERR_PARTIAL 值:3; 文件只有部分被上傳

UPLOAD_ERR_NO_FILE 值:4;沒有文件被上傳, 值:5; 上傳文件大小為0 。

下面來一個簡單的實例,選擇需要上傳的文件,點擊“上傳”按鈕,就會在上方顯示要上傳文件的絕對路徑。

其具體的開發步驟是如下的形式:

(1)新創建一個 index.php 動態頁,創建一個 form 表單,添加一個文件域和一個提交按鈕,其主要的代碼如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

<!DOCTYPE html>

<html lang="en">

<head>

  <meta charset="UTF-8">

  <title>form</title>

</head>

<body>

<form action="index.php" method="post" name="form1">

  <input type="file" name="file" size="15">

  <input type="submit" name="upload" value="上傳文件">

</form>

</body>

</html>

說明:本實例實現的是獲取文件域的值,並沒有實現圖片的上傳,因此不需要設置<form>表單元素的

enctype="multipart/form-data" 屬性。

(2)編寫PHP語句,通過$_POST[]全局變量來獲取菜單列表框的值,使用echo語句輸出。其PHP代碼如下顯示:

1

2

3

<?php

echo $_POST["file"];     //輸出要上傳文件的絕對路徑

?>

(3)在瀏覽器中輸入運行地址,按回車鍵,


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM