php $_FILES錯誤說明 以及圖片前端圖片上傳失敗。


我的另一個原文:https://blog.csdn.net/qq_36570464/article/details/80692241

今天被一個問題弄了好久,

先看代碼:

前端:

<form method="post" action="upimage.php" enctype="multipart/form-data">
 <input type="hidden" value="204800" name="MAX_FILE_SIZE"/>
 File: <input type="file" name="file" />
 <input type="submit" value="OK" name="submitbtn" style="width:100px;height:23px"/></center>
</form>

php:(部分)

 $imgfile=$_FILES["file"];
$submitbtn=$_POST['submitbtn'];
var_dump($imgfile);
 if($submitbtn=='OK' and is_array($imgfile)){      // is_array 檢測變量是否是數組
 $name=$imgfile['name'];  //取得圖片名稱
 $type=$imgfile['type']; //取得圖片類型
 $size=$imgfile['size'];  //取得圖片長度
 $tmpfile=$imgfile['tmp_name'];  //圖片上傳上來到臨時文件的路徑
     // is_uploaded_file 判斷文件是否是通過 HTTP POST 上傳的
 if($tmpfile and is_uploaded_file($tmpfile)){  //判斷上傳文件是否為空,文件是不是上傳的文件


通過運行:

上傳小一點圖片沒有問題,大一點的就不行了,自然而然會想到是文件限制的問題?

由於剛接觸不太懂,中間走了不少彎路。

最后通過:

var_dump($imgfile);


添加var_dump();看看打印的是什么

 



如圖,這是打印的結果,可以看見error  的值為2!!!關於
PHP $_FILES錯誤說明error 0,1,2,3,4,5,6,7

點擊可查看:

 



我們發現是文件超出了大小。

經過網上查找,我只這么搜索的:“其值為 2,上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項指定的值。”

網上出現很多解決方法:好像沒有一個符合的,都是講什么php .ini 配置文件里 的upload_max_filesize 值改大什么的。

我試了,沒用,好吧,這樣來回折騰,幾個小時過去了,最后

我刪了

<input type="hidden" value="204800" name="MAX_FILE_SIZE"/>

然后再次上傳,然后成功了,

 



我又比對了文件。

 

 




可以發現,這里是文件的大小value 限制了,

 

完全不夠,

所以,最根本的原因,就是value 大小太小了。我們的設置大一點,問題解決了。


value  的里面數值單位是字節

這里是重點,所以我們不要在把php.ini 里的配置混為已添加了。
---------------------
作者:bubbleTg
來源:CSDN
原文:https://blog.csdn.net/qq_36570464/article/details/80692241
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

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



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