簡體   English   中英

PHP數組大小值錯誤

[英]PHP array size value error

這是我的代碼:

 if(isset($_FILES['productimage']['name'])!='') 
    {
     echo $arraysize=sizeof($_FILES['productimage']['name']);
   for($i=0;$i<$arraysize;$i++)
    {
      .....
    }

在這里,我無法上傳任何圖片,但顯示尺寸為1。

那么它創建一個空文件嗎?

確切的問題是什么? 我怎樣才能解決這個問題?

提交包含<input type=file>的表單時,即使文件未上傳,PHP也會填充$_FILES數組。

這意味着將設置數組鍵( isset將返回true),但它們將(或不會)包含有意義的值。 檢查文件是否實際上傳的最佳方法是檢查與文件關聯的錯誤代碼

if (isset($_FILES["productimage"]) && $_FILES["productimage"]["error"] === UPLOAD_ERR_OK) {
    // handle uploaded file
}

在上面的示例中,添加了isset($_FILES["productimage"])以確保設置了數組鍵; 文件是否已上傳。

您可以通過這種方式進行調試,以找出問題所在:

if ($_FILES["productimage"]["error"] > 0) {
    echo "Error: " . $_FILES["productimage"]["error"] . "<br>";
} else {
    echo "Upload: " . $_FILES["productimage"]["name"] . "<br>";
    echo "Type: " . $_FILES["productimage"]["type"] . "<br>";
    echo "Size: " . ($_FILES["productimage"]["size"] / 1024) . " kB<br>";
    echo "Stored in: " . $_FILES["productimage"]["tmp_name"];
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM