2017-03-27 33 views
1

我想要使用多個文件輸入窗體,但是當我離開輸入爲空,並在輸入字段上運行計數命令,然後它給1作爲值。爲什麼在窗體輸出1多個文件輸入字段計數

<form action="submit_post.php" method="post" enctype="multipart/form-data"> 

<input id="images" type="file" name="image[]" title="Upload Images" class="upload" multiple="multiple"/> 
<input type="submit" name="btn" /> 
</form> 

,這裏是我的submit_post.php文件

<?php 

echo count($_FILES['image']['name']); 

?> 

我需要的值爲零爲了寫一個if語句在圖像輸入欄爲空,那麼不執行查詢,但即使我不選擇任何文件,它仍在執行查詢。

我甚至試圖使用'空',但仍然沒有運氣,因爲它認爲它不是空的。感謝您的幫助提前

+0

檢查文件的大小'$ _FILES [ '形象'] [ '大小'] == 0' – Mohammad

+0

當您提交表單,文件輸入字段設置空白值。這就是爲什麼count()方法返回1.如果你解決了這個問題,你需要使用客戶端驗證,使用javascript或html required屬性。 – Jayanta

回答

1

你可以只計數之前篩選名稱:

$numberOfFiles = count(array_filter($_FILES['image']['name'])); 
+1

非常感謝您的幫助 – chris

0

您還可以指望你的整個$_FILES

例子:

echo count($_FILES); 

你應該檢查$_FILES變量保存適當的數據。

例子:

var_dump($_FILES); 

if(isset($_FILES['image'])){ 
    $files = count($_FILES['image']); #Here is the count of files 
}else{ 
    #No files to be uploads 
} 

例子:

$count = isset($_FILES['image'])? count($_FILES['image']) : 0; #Here is the count of files 
相關問題