Здесь я всегда нахожу вопросы и ответы очень полезными для моих проектов. В настоящее время я работаю над формой множественной загрузки PHP и надеюсь, что это сообщество поможет мне. Пока код работает, за исключением того, что если я загружаю несколько файлов, я получаю на один файл меньше загруженного. например, если я выберу 3 файла, я получаю 2 загружаемых файла, если я выбираю 8 файлов, 7 загружаются. Ниже мой код:
<?php
$id = $_SESSION['PHOTO_ID'];
$hd = $_SESSION['PROJECT_NAME'];
$cat = "projects";
//function to get file extension
function getExtension($str)
{
$i = strrpos($str,".");
if(!$i) {
return "";
}
$l = strlen($str) - $i;
$ext = substr($str,$i+1,$l);
return $ext;
}
$allowedExts = array("jpeg", "jpg");
for ($i = 0; $i < count($_FILES['img']['name']); $i++) {
//set variables for images
$imgname = $_FILES["img"]["name"][$i];
$img_tmp = $_FILES["img"]["tmp_name"][$i];
$exts = getExtension($_FILES["img"]["name"][$i]);
//replace space character with a dash and add timestamp and random numbers
$nm = str_replace(" ","-",$hd);
//$exts = getExtension($val['name']);
$rand = rand();
$img = $rand."-".$nm."-".time().".".$exts;
$target = "../../img/".$img;
move_uploaded_file($img_tmp=$_FILES["img"]["tmp_name"][$i], $target);
}
//end of for loop
}
?>
И форма HTML ниже:
<form method="post" action="demo.php" id="imageform" role="form" enctype="multipart/form-data">
<input type="file" multiple name="img[]" id="images">
<input type="submit" name="submit" id="image_upload" value="Update">
</form>
И сессии, которые я создал, но не очень полезные в данный момент.
$_SESSION['PHOTO_ID'] = $_GET['id'];
$_SESSION['PROJECT_NAME'] = $_GET['project'];
Задача ещё не решена.
Других решений пока нет …