0
我正在嘗試對上傳的圖像進行一些驗證。當我查看是否選擇了任何圖像並上傳時,如果沒有圖像上傳,它應該返回錯誤信息。但在我的方法中,它總是返回false
。如何查看上傳的文件是否爲空?
繼承人的方法:
class event{
private $dbh;
private $post_data;
public function __construct($post_data, PDO $dbh){
$this->dbh = $dbh;
$this->post_data = array_map('trim', $post_data);
}
public function checkValidImages(){
$errors = array();
if(empty($this->post_data['event-images'])){
$errors[] = 'Please select at least one image to upload.';
}
if(count($errors) > 0){
return $errors;
}else{
return FALSE;
}
}
這裏稱之爲:
// Check all images are valid
$images = new event($_FILES, $dbh);
var_dump($imageErrors = $images->checkValidImages());
的var_dump()
回報bool(false)
。
繼承人的形式:
<form name="submit-event" action="submit-event.php" method="post" enctype="multipart/form-data">
<div class="large-12 columns no-padding">
<p>Select images for this event</p><br />
<input type="file" class="right" name="event-images[]" size="50" multiple="multiple" />
</div>
</form>
那麼,爲什麼是我的方法返回,甚至當我不選擇任何圖像假的。
var_dump()返回bool(false),這意味着沒有錯誤。這就是你如何定義你的功能。 – Maximus2012
我剛剛意識到,如果我不選擇一個圖片上傳和計數'$ _FILES ['event-images'] ['name']'它會返回1而不是0.這是奇怪的。當然,如果我沒有選擇任何東西,它應該歸零? – crm
我會這樣想的。 – Maximus2012