日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

PHP特點之文件上傳1——使用POST方法上傳單文件和多文件

瀏覽:109日期:2022-09-15 13:37:37

本特性可以使用戶上傳文本和二進制文件。用 PHP 的認證和文件操作函數,可以完全控制允許哪些人上傳以及文件上傳后怎樣處理。

PHP 能夠接受任何來自符合 RFC-1867 標準的瀏覽器(包括?Netscape Navigator 3?及更高版本,打了補丁的?Microsoft Internet Explorer 3?或者更高版本)上傳的文件。

Note:?相關的設置

請參閱?php.ini?的?file_uploads,upload_max_filesize,upload_tmp_dirpost_max_size?以及?max_input_time?設置選項。

Example #1 文件上傳表單

可以如下建立一個特殊的表單來支持文件上傳:

<!-- The data encoding type, enctype, MUST be specified as below --><form enctype='multipart/form-data' action='__URL__' method='POST'> <!-- MAX_FILE_SIZE must precede the file input field --> <input type='hidden' name='MAX_FILE_SIZE' value='30000' /> <!-- Name of input element determines name in $_FILES array --> Send this file: <input name='userfile' type='file' /> <input type='submit' value='Send File' /></form>

以上范例中的?__URL__?應該被換掉,指向一個真實的 PHP 文件。

MAX_FILE_SIZE?隱藏字段(單位為字節)必須放在文件輸入字段之前,其值為接收文件的最大尺寸。這是對瀏覽器的一個建議,PHP 也會檢查此項。在瀏覽器端可以簡單繞過此設置,因此不要指望用此特性來阻擋大文件。實際上,PHP 設置中的上傳文件最大值是不會失效的。但是最好還是在表單中加上此項目,因為它可以避免用戶在花時間等待上傳大文件之后才發現文件過大上傳失敗的麻煩。

注意:

要確保文件上傳表單的屬性是?enctype='multipart/form-data',否則文件上傳不了。

全局變量?$_FILES?自 PHP 4.1.0 起存在(在更早的版本中用?$HTTP_POST_FILES?替代)。此數組包含有所有上傳的文件信息。

以上范例中?$_FILES?數組的內容如下所示。我們假設文件上傳字段的名稱如上例所示,為?userfile。名稱可隨意命名。

$_FILES[’userfile’][’name’]客戶端機器文件的原名稱。

$_FILES[’userfile’][’type’]文件的 MIME 類型,如果瀏覽器提供此信息的話。一個例子是“image/gif”。不過此 MIME 類型在 PHP 端并不檢查,因此不要想當然認為有這個值。

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

$_FILES[’userfile’][’tmp_name’]文件被上傳后在服務端儲存的臨時文件名。

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

文件被上傳后,默認地會被儲存到服務端的默認臨時目錄中,除非?php.ini?中的?upload_tmp_dir?設置為其它的路徑。服務端的默認臨時目錄可以通過更改 PHP 運行環境的環境變量?TMPDIR?來重新設置,但是在 PHP 腳本內部通過運行?putenv()?函數來設置是不起作用的。該環境變量也可以用來確認其它的操作也是在上傳的文件上進行的。

Example #2 使文件上傳生效

請查閱函數?is_uploaded_file()?和?move_uploaded_file()?以獲取進一步的信息。以下范例處理由表單提供的文件上傳。

<?php// 在PHP4.1.0版本以前, 應該使用$HTTP_POST_FILES來替代$_FILES.$uploaddir = ’/var/www/uploads/’;$uploadfile = $uploaddir . basename($_FILES[’userfile’][’name’]);echo ’<pre>’;if (move_uploaded_file($_FILES[’userfile’][’tmp_name’], $uploadfile)) { echo 'File is valid, and was successfully uploaded.n';} else { echo 'Possible file upload attack!n';}echo ’Here is some more debugging info:’;print_r($_FILES);print '</pre>';?>

接受上傳文件的 PHP 腳本為了決定接下來要對該文件進行哪些操作,應該實現任何邏輯上必要的檢查。例如可以用?$_FILES[’userfile’][’size’]?變量來排除過大或過小的文件,也可以通過?$_FILES[’userfile’][’type’]?變量來排除文件類型和某種標準不相符合的文件,但只把這個當作一系列檢查中的第一步,因為此值完全由客戶端控制而在 PHP 端并不檢查。自 PHP 4.2.0 起,還可以通過?$_FILES[’userfile’][’error’]?變量來根據不同的錯誤代碼來計劃下一步如何處理。不管怎樣,要么將該文件從臨時目錄中刪除,要么將其移動到其它的地方。

如果表單中沒有選擇上傳的文件,則 PHP 變量?$_FILES[’userfile’][’size’]?的值將為 0,$_FILES[’userfile’][’tmp_name’]?將為空。

如果該文件沒有被移動到其它地方也沒有被改名,則該文件將在表單請求結束時被刪除。

Example #3 上傳一組文件

PHP 的?HTML 數組特性甚至支持文件類型。

<form action='' method='post' enctype='multipart/form-data'><p>Pictures:<input type='file' name='pictures[]' /><input type='file' name='pictures[]' /><input type='file' name='pictures[]' /><input type='submit' value='Send' /></p></form><?phpforeach?($_FILES['pictures']['error']?as?$key?=>?$error)?{????if?($error?==?UPLOAD_ERR_OK)?{????????$tmp_name?=?$_FILES['pictures']['tmp_name'][$key];????????$name?=?$_FILES['pictures']['name'][$key];????????move_uploaded_file($tmp_name,?'data/$name');????}}?>

標簽: PHP
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
另类综合日韩欧美亚洲| 亚洲欧洲另类| 国产日韩欧美中文在线| 久久国产99| 丝袜av一区| 午夜在线一区二区| 日韩在线一二三区| 日韩欧美中文字幕在线视频| 91大神在线观看线路一区| 精品视频久久| 久久免费国产| 国产亚洲在线观看| 一区二区国产在线| 国产美女视频一区二区| 精品资源在线| 日韩国产网站| 欧美亚洲在线日韩| 视频一区中文字幕精品| 日本一区福利在线| 国产日韩中文在线中文字幕| 欧美香蕉视频| 亚洲在线一区| 国产免费播放一区二区| 国产一区二区三区四区大秀 | 国产精久久久| 久久电影tv| 五月婷婷亚洲| 亚洲a级精品| 久久精品国产成人一区二区三区| 日韩欧美不卡| 久久午夜精品| 久久亚州av| 日韩网站中文字幕| 老司机精品久久| 国产亚洲一卡2卡3卡4卡新区| 丰满少妇一区| 亚洲激情二区| 国产精品网在线观看| 亚洲精品一区二区妖精| 日韩在线成人| 国产高清不卡| 蜜乳av另类精品一区二区| 免费日韩成人| 亚洲女同一区| 国产欧美自拍| 国产精品v亚洲精品v日韩精品| 精品日韩视频| 综合一区av| 久久精品一本| 99pao成人国产永久免费视频| 国产一区二区三区久久| 欧美专区一区二区三区| 久久字幕精品一区| 红桃视频亚洲| 成人亚洲一区二区| 久久精品超碰| 激情视频一区二区三区| 国产欧美一区二区三区国产幕精品| 精品视频自拍| 亚洲+小说+欧美+激情+另类| 亚洲啊v在线| 亚洲精品观看| av中文资源在线资源免费观看| 日韩精品久久久久久| 在线人成日本视频| 日本不卡一区二区三区| 国产一区日韩一区| 久久久免费人体| 中文字幕一区二区三区四区久久| 国产+成+人+亚洲欧洲在线| 蜜桃久久久久久| 高清av一区二区三区| 国产日韩一区二区三区在线| 欧美在线资源| 麻豆视频在线观看免费网站黄| 国产精品日本| 激情视频网站在线播放色| 青草国产精品| 亚洲日产av中文字幕| 美女国产精品| 亚洲综合日韩| 一本色道久久精品| 五月综合激情| 亚洲激情二区| 国产婷婷精品| 99re国产精品| 美女尤物久久精品| 视频一区视频二区在线观看| 最新亚洲激情| 一区视频在线| 亚洲免费高清| 石原莉奈在线亚洲三区| 欧美一区=区| 午夜在线精品| 免费人成在线不卡| 视频一区中文字幕精品| 亚洲18在线| 日韩激情综合| 91麻豆精品激情在线观看最新| 日韩激情网站| 国产毛片一区二区三区| 国产精东传媒成人av电影| 国产精品高清一区二区| 国产精品嫩草影院在线看| 国产精品一区二区精品视频观看| 国产日本久久| 精品一二三区| 超碰成人av| 久久免费大视频| 91精品电影| 日av在线不卡| 日韩av电影一区| 欧美黑人做爰爽爽爽| 欧美丰满日韩| 亚洲手机在线| 日韩中文字幕av电影| 日韩成人在线看| 精品深夜福利视频| 久久久久久久久久久妇女| 国产精品美女| 欧美日韩黄网站| 视频在线不卡免费观看| 日韩欧美午夜| 在线亚洲自拍| 69堂免费精品视频在线播放| 精品视频国产| 亚洲高清不卡| 亚洲欧洲国产精品一区| 国产乱子精品一区二区在线观看| 精品国产一区二区三区噜噜噜| 亚洲天堂1区| 免费成人在线观看| 国产精品v日韩精品v欧美精品网站| zzzwww在线看片免费| 夜久久久久久| 欧美日韩一区二区三区四区在线观看 | 国产精品密蕾丝视频下载| 久久精品五月| 99精品电影| 亚洲精品乱码| 久草精品视频| 午夜欧美精品| 国产欧美日韩一区二区三区在线| 国产高清不卡| 一区二区精品| 大香伊人久久精品一区二区| 午夜电影亚洲| 国产日韩欧美一区二区三区在线观看| 精品中文字幕一区二区三区四区| 国产99精品| 国产日韩一区二区三免费高清| 日韩在线观看| 婷婷精品在线| 视频小说一区二区| 91精品丝袜国产高跟在线| 国产一二在线播放| 亚洲一级淫片| 日韩免费在线| 日本成人在线视频网站| 欧美成人基地| 国产精品自拍区| 女人av一区| 欧美激情精品| 国产一区2区| 欧美日韩在线观看首页| 在线一区免费观看| 欧美日本久久| 日韩欧美二区| 免费在线观看成人| 久久精品资源| 日韩一级网站| 蜜桃久久久久| 自拍日韩欧美| 国产亚洲一卡2卡3卡4卡新区| 成人高清一区| 噜噜噜躁狠狠躁狠狠精品视频| 国产精品一区二区99| 丝袜美腿诱惑一区二区三区 | 亚洲欧美激情诱惑| 久久av影院| 亚洲激情另类| 久久伊人亚洲| 久久xxxx精品视频| 久久久免费人体| 亚洲欧美久久久| 精品一区视频| 亚洲一区二区三区无吗| 狠狠久久伊人| 亚洲精品一二| 久久青草久久| 国产精品中文字幕亚洲欧美 | 日韩在线观看中文字幕| 国产精品久久久久av电视剧| 日本成人一区二区| 蜜桃tv一区二区三区| 水蜜桃久久夜色精品一区的特点| 久久免费精品| 亚洲精品乱码| 久久久蜜桃一区二区人| 欧美日一区二区三区在线观看国产免 |