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

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

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

瀏覽:106日期: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久久,三上悠亚国产精品一区二区三区
精品中文在线| 国产一区二区精品久| 久久婷婷一区| av综合电影网站| 亚洲人成在线网站| 免费在线小视频| 亚洲精品一级二级| 欧美1区2区3区| 欧美精品一二| 99在线观看免费视频精品观看| 亚洲福利专区| 影音国产精品| 亚洲午夜免费| 日本强好片久久久久久aaa| 欧美天堂一区| 久久精品女人| 久久精品免视看国产成人| 日韩欧美二区| re久久精品视频| 在线精品国产亚洲| 九九色在线视频| 国产视频亚洲| 亚洲精品三级| 欧美国产精品| 亚洲三级欧美| 91久久中文| 日韩av字幕| 国产aⅴ精品一区二区四区| 亚洲成a人片| 麻豆亚洲精品| 久久狠狠久久| 免费日韩成人| 日韩亚洲一区在线| 亚洲欧美日本视频在线观看| 日韩国产成人精品| 麻豆国产精品一区二区三区| 国产白浆在线免费观看| 亚洲午夜久久久久久尤物| 亚洲色图网站| 欧美激情视频一区二区三区免费| 日本免费久久| 综合一区二区三区| 高清一区二区三区av| 伊人久久成人| 免费在线亚洲欧美| 亚洲激情中文在线| 亚洲一级淫片| 精品一区视频| 99视频一区| 久久成人av| 蜜桃tv一区二区三区| 69精品国产久热在线观看| 岛国av免费在线观看| 蜜桃免费网站一区二区三区| 欧美国产中文高清| 国产亚洲激情| 精品一区二区三区中文字幕在线| 一本一道久久a久久精品蜜桃| 日本免费在线视频不卡一不卡二| 激情亚洲影院在线观看| 日韩国产成人精品| 亚洲www免费| 欧美日韩一区二区三区四区在线观看| 日韩电影二区| 婷婷五月色综合香五月| 新版的欧美在线视频| 亚洲一区二区三区无吗| 日本а中文在线天堂| 日韩一区二区三区精品| 久久精品亚洲欧美日韩精品中文字幕| 欧美日韩91| 亚洲少妇自拍| 视频二区不卡| 精品中文字幕一区二区三区四区| 亚洲一二av| 91精品亚洲| 欧美日韩调教| 亚洲欧美日韩视频二区| 日韩88av| 欧美日韩精品一区二区三区在线观看| 亚洲成人免费| 午夜av不卡| 久久精品国产亚洲aⅴ| 亚洲a成人v| 99在线|亚洲一区二区| 国产一区一一区高清不卡| 日韩精品免费视频一区二区三区 | 国产色综合网| 欧洲一区二区三区精品| 欧美极品一区二区三区| 性色一区二区| 亚洲福利国产| 日韩亚洲一区在线| 久久一区精品| 在线视频精品| 99精品美女| 高潮一区二区| 丁香婷婷久久| 蜜桃久久久久| 国产欧美精品久久| 深夜日韩欧美| 久久xxxx精品视频| 亚州av乱码久久精品蜜桃| 日韩欧美一区二区三区在线观看| 麻豆精品在线视频| 日韩精品国产欧美| 美女精品一区| 中文在线一区| 在线亚洲精品| 一本一道久久a久久精品蜜桃| 欧美精品日日操| 精品三级av| 麻豆成人在线观看| 国产精品九九| 国产精品地址| 国产精品成人国产| 欧美视频精品全部免费观看| 奇米777国产一区国产二区| 中文不卡在线| 日精品一区二区三区| 亚洲一区二区三区中文字幕在线观看 | 欧美伊人久久| 青青草视频一区| 日韩不卡一区二区| 欧美日韩一区自拍| 国产精品地址| 黄色精品视频| 国产资源在线观看入口av| 日本а中文在线天堂| 欧美精品高清| 欧美中文字幕一区二区| 中文日韩在线| 蜜臀av性久久久久蜜臀aⅴ四虎| 蜜臀av一区二区在线免费观看| 亚洲精品高潮| 久久精品99久久久| 麻豆视频久久| 国产一区二区三区视频在线| 日韩中文在线电影| 中文日韩在线| 亚洲不卡视频| 欧美韩一区二区| 国产高潮在线| 成人av二区| 免费在线欧美视频| 欧美视频一区| 久久久久久自在自线| 日韩不卡在线| 精品一区三区| 亚洲丝袜美腿一区| 国产精品久久久一区二区| 亚洲黄色网址| 国产精品老牛| 欧美日韩亚洲一区三区| 精品国产亚洲一区二区三区大结局| 色在线视频观看| 国产亚洲网站| 国产精品综合色区在线观看| 91综合网人人| 国产一区成人| 国产一区 二区| 日韩1区2区| 免费精品国产| 91在线成人| 色一区二区三区| 日韩影院在线观看| 国产精品色在线网站| 美女av在线免费看| 香蕉精品视频在线观看| 欧美日韩一区二区三区四区在线观看| 动漫av一区| 日韩在线观看一区二区| 国产精品videossex| 99久久激情| 91久久精品无嫩草影院| 日韩欧美1区| 日本中文字幕视频一区| 久久女人天堂| 99香蕉国产精品偷在线观看 | 蜜臀久久久久久久| 麻豆91小视频| 玖玖精品视频| 国产999精品在线观看| 六月天综合网| 国产精品久久久久久久久久10秀| 爽好多水快深点欧美视频| 国产精品porn| 午夜欧美视频| 国产毛片精品| 99热精品久久| 国产精品视频一区二区三区 | 亚洲一级影院| 国产日韩高清一区二区三区在线| 蜜桃精品在线| 欧美日韩伊人| 欧美日韩视频| 精品视频在线你懂得| 亚洲免费观看高清完整版在线观| 国产日韩电影| 久久国产精品色av免费看|