Здравствуйте, я делаю PHP Загружаю несколько файлов, но моя форма не требует загрузки всего поля (требуется как минимум одна загрузка поля), поэтому пользователь может не загружать второе поле ввода.PHP - многократная загрузка файла, если не загружается какое-либо поле, он получит ошибку
Проблема в том, что если пользователь загружает только 1 файл, пользователь получит сообщение об ошибке «Недопустимый файл» (окончательная инструкция else). Но если пользователь загружает все 2 поля, у него нет ошибки, я думаю, ошибка исходит из поля нулевой загрузки. Поэтому я сначала использую, если не пуст, но это не работает. Как мне это сделать?
<form action="upload.php" method="post" enctype="multipart/form-data">
Image 1 :
<input type="file" name="images[]" />
<br>
image 2 :
<input type="file" name="images[]" /> <br>
<input type="submit" value="Upload" />
</form>
в upload.php странице
if(!empty($_FILES))
{
$count = count($_FILES["images"]["name"]);
for($i=1; $i <= $count; $i++)
{
if ((($_FILES["images"]["type"][$i-1] == "image/gif")
|| ($_FILES["images"]["type"][$i-1] == "image/jpeg")
|| ($_FILES["images"]["type"][$i-1] == "image/png"))
&& ($_FILES["images"]["size"][$i-1] < 2000000)) //2 MB
{
if ($_FILES["images"]["error"][$i-1] > 0)
{
echo "File Error : " . $_FILES["images"]["error"][$i] . "<br />";
}
else
{
if (file_exists("path/to/".$_FILES["images"]["name"][$i-1]))
{
echo "<b>".$_FILES["images"]["name"][$i-1] . " already exists. </b>";
}
else
{
$newname = date('Y-m-d')."_".$i.".jpg";
move_uploaded_file($_FILES["images"]["tmp_name"][$i-1] , "path/to/".$newname);
}
}
}
else
{
echo "Invalid file" ;
exit();
}
}
}