в моей форме Я пытаюсь загрузить несколько или один файл, используя php. Так что мой HTML таблица выглядит следующим образом:php upload file issue using array
<tr>
<td width="142"><b>Docs</b>
<td width="142"><input type="file" name="files[]" id="project_docs1" class="docfile" /></td>
<td width="142"><input type="file" name="files[]" id="project_docs2" class="docfile" /></td>
<td width="142"><input type="file" name="files[]" id="project_docs3" class="docfile" /></td>
</td>
Теперь, когда я загрузить только один файл, который он показывает мне сообщение об ошибке, как: неверный формат, но он должен быть принять один файл. не нужно загружать все 3 файла. Можете ли вы рассказать мне, почему оно показывает это сообщение об ошибке: Неверный формат? Если вы загружаете все 3 файла, тогда он работает нормально.
и когда я нажимаю кнопку загрузки без загрузки файла, он показывает мне значение 1 для переменной $noOfUpload
. Зачем ?
$valid_formats = array("jpg", "png", "gif", "txt", "bmp");
$max_file_size = 1024*100; //100 kb
$path = "project_docs"; // Upload directory
$error = array(); // load error message
$files_name = array(); // get uploaded file name
foreach ($_FILES['files']['name'] as $key => $name) {
$size = $_FILES['files']['size'][$key]. "<br>";
$noOfUpload = count($name);
if($noOfUpload <= 0){
$error[] = "Upload your document/s<br>";
}elseif(!in_array(pathinfo($name, PATHINFO_EXTENSION), $valid_formats)){
$error[] = "invalid file formate : $name<br>";
}
//$name = md5(uniqid()) . '-' . htmlspecialchars_decode($name);
$files_name[] = "$name";
}
if(!empty($error)){
foreach ($error as $e) {
echo "<div class='error'>$e</div>";
}
}else{
foreach ($files_name as $fn) {
echo "$fn<br>";
}
}
Вы помогаете более ценить. :)
Хорошо, я пытаюсь с этим. – creativeartbd
@creativeartbd, пожалуйста, проверьте изменения '$ _FILES ['files'] как $ file' –
@creativeartbd, так как вы используете несколько загрузок, вы получите другой тип массива, мой приведенный выше код будет работать для' '..., используя это, вы можете выбрать несколько файлов в одном селекторе файлов с помощью' ctrl key' .. и использовать мой приведенный выше код. –