新聞中心
php文件上傳,$_FILES里面?zhèn)鞑贿M(jìn)去數(shù)據(jù),
修改PHP上傳文件大小限制的方法
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、成都小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了金臺(tái)免費(fèi)建站歡迎大家使用!
1. 一般的文件上傳,除非文件很小.就像一個(gè)5M的文件,很可能要超過(guò)一分鐘才能上傳完.
但在php中,默認(rèn)的該頁(yè)最久執(zhí)行時(shí)間為 30 秒.就是說(shuō)超過(guò)30秒,該腳本就停止執(zhí)行.
這就導(dǎo)致出現(xiàn) 無(wú)法打開網(wǎng)頁(yè)的情況.這時(shí)我們可以修改 max_execution_time
在php.ini里查找
max_execution_time
默認(rèn)是30秒.改為
max_execution_time = 0
0表示沒(méi)有限制
2. 修改 post_max_size 設(shè)定 POST 數(shù)據(jù)所允許的最大大小。此設(shè)定也影響到文件上傳。
php默認(rèn)的post_max_size 為2M.如果 POST 數(shù)據(jù)尺寸大于 post_max_size $_POST 和 $_FILES superglobals 便會(huì)為空.
查找 post_max_size .改為
post_max_size = 150M
3. 很多人都會(huì)改了第二步.但上傳文件時(shí)最大仍然為 8M.
為什么呢.我們還要改一個(gè)參數(shù)upload_max_filesize 表示所上傳的文件的最大大小。
查找upload_max_filesize,默認(rèn)為8M改為
upload_max_filesize = 100M
另外要說(shuō)明的是,post_max_size 大于 upload_max_filesize 為佳.
php上傳文件提示成功但沒(méi)有存進(jìn)數(shù)據(jù)庫(kù)
$sql="insert into t_file(f_title,f_remark,f_file,f_upload_time) values('$title','$remark','$file',now())";
這里的now()是取當(dāng)前時(shí)間么?沒(méi)用過(guò)這個(gè)方法,貌似php手冊(cè)里面也沒(méi)有哦,不知道是不是你自定義的,如果不是的話,應(yīng)該報(bào)錯(cuò)的,直接用time()吧。
PHP上傳了沒(méi)文件
echo print_r($_FILES["upfile"]);你輸出的就是你上傳的路徑。就沒(méi)有上傳好不,表單傳遞過(guò)來(lái)的是你本地文件所在的路徑,你的Error返回信息是0說(shuō)明沒(méi)有發(fā)生錯(cuò)誤。1、FORM標(biāo)簽enctype屬性
表單中enctype="multipart/form-data"的意思,是設(shè)置表單的MIME編碼。默認(rèn)情況,
這個(gè)編碼格式是application/x-www-form-urlencoded,不能用于文件上傳;
只有使用了multipart/form-data,才能完整的傳遞文件數(shù)據(jù)
form enctype="multipart/form-data" method="post" name="upform"
input標(biāo)簽 type 屬性中的 "file"
input name="upfile" type="file"
2、$_FILES 系統(tǒng)函數(shù)
$_FILES['myFile']['name'] 客戶端文件的原名稱。
$_FILES['myFile']['type'] 文件的 MIME 類型,例如"image/gif"。
$_FILES['myFile']['size'] 已上傳文件的大小,單位為字節(jié)。
$_FILES['myFile']['tmp_name'] 儲(chǔ)存的臨時(shí)文件名,一般是系統(tǒng)默認(rèn)。
$_FILES['myFile']['error'] 該文件上傳相關(guān)的錯(cuò)誤代碼。
3、move_uploaded_file函數(shù)
上傳后移動(dòng)文件到目標(biāo)位置的函數(shù)
move_uploaded_file(臨時(shí)文件,目標(biāo)位置和文件名);
4、is_uploaded_file 函數(shù)
判斷上傳MIME類型的文件函數(shù)利用php的文件函數(shù)來(lái)實(shí)現(xiàn)上傳這段代碼分為兩個(gè)文件,一個(gè)為upload.html,一個(gè)是upload.php upload.html form enctype="multipart/form-data" action="upload.php" method="post" input type="hidden" name="max_file_size" value="100000" input name="userfile" type="file" input type="submit" value="上傳文件" /form其中, 請(qǐng)注意form enctype="multipart/form-data"......這是一個(gè)標(biāo)簽,我們要實(shí)現(xiàn)文件的上傳,必須指定為multipart/form-data,否則服務(wù)器將不知道要干什么。 值得注意的是文件upload.html中表單選項(xiàng) MAX_FILE_SIZE 的隱藏值域,通過(guò)設(shè)置其Value(值)可以限制上載文件的大小。 MAX_FILE_SIZE 的值只是對(duì)瀏覽器的一個(gè)建議,實(shí)際上它可以被簡(jiǎn)單的繞過(guò)。因此不要把對(duì)瀏覽器的限制寄希望于該值。實(shí)際上,PHP 設(shè)置中的上傳文件最大值,是不會(huì)失效的。但是最好還是在表單中加上 MAX_FILE_SIZE,因?yàn)樗梢员苊庥脩粼诨〞r(shí)間等待上傳大文件之后才發(fā)現(xiàn)該文件太大了的麻煩。 upload.php $f=$HTTP_POST_FILES['Myfile'];$dest_dir='uploads';//設(shè)定上傳目錄$dest=$dest_dir.'/'.date("ymd")."_".$f['name'];//設(shè)置文件名為日期加上文件名避免重復(fù)$r=move_uploaded_file($f['tmp_name'],$dest);chmod($dest, 0755);//設(shè)定上傳的文件的屬性或者?copy($_FILES[MyFile][tmp_name],$_FILES[MyFile][name]);?以上范例中 $_FILES 數(shù)組的內(nèi)容如下所示。我們假設(shè)文件上傳字段的名稱為 userfile(名稱可隨意命名) $_FILES['userfile']['name'] 客戶端機(jī)器文件的原名稱。 $_FILES['userfile']['type'] 文件的 MIME 類型,需要瀏覽器提供該信息的支持,例如“image/gif”。 $_FILES['userfile']['size'] 已上傳文件的大小,單位為字節(jié)。 $_FILES['userfile']['tmp_name'] 文件被上傳后在服務(wù)端儲(chǔ)存的臨時(shí)文件名。 $_FILES['userfile']['error'] 和該文件上傳相關(guān)的錯(cuò)誤代碼 值:0; 沒(méi)有錯(cuò)誤發(fā)生,文件上傳成功。 值:1; 上傳的文件超過(guò)了 php.ini 中 upload_max_filesize 選項(xiàng)限制的值。 值:2; 上傳文件的大小超過(guò)了 HTML 表單中 MAX_FILE_SIZE 選項(xiàng)指定的值。 值:3; 文件只有部分被上傳。 值:4; 沒(méi)有文件被上傳。
PHP 文件上傳提交后取不到 的值是什么原因
我這能取出完整的值哦
可能是你的php.ini里的register_globals=off的原因吧,改成on就可以用舊的寫法
PHP中$_FILES["file"]["error"]無(wú)值,就是上傳大文件時(shí)無(wú)值,并且也不返回1,2這兩個(gè)值。為什么呢?謝謝!
造成這個(gè)問(wèn)題的可能性有以下幾點(diǎn):
1.提交的表單里面需要有enctype="multipart/form-data"這個(gè)屬性
2.大文件上傳無(wú)值:修改php.ini更改上傳文件的大小和php響應(yīng)時(shí)間
3.自己print_r($_FILES);看看是否有數(shù)據(jù),根據(jù)這個(gè)邏輯去查找問(wèn)題!
當(dāng)前文章:php文件上傳了沒(méi)數(shù)據(jù),php接收文件上傳
文章分享:http://www.dlmjj.cn/article/dseejpc.html