Я пытаюсь разместить несколько файлов на сервере. Я написал демо-код, который отлично работает. Тем не менее, когда я интегрировал его с моей основной программой; это дает мне файл не найдена ошибка. Вот мой код:
<body>
<div class="container well" style="margin-top: 50px">
<form id="profile-form" action="" method="post">
<div class="row">
<div class="form-group col-md-2">
<label style="padding-left:20px;padding-top:10px">Upload image<strong> (5 images required)<strong></label>
</div>
<div class="form-group col-md-4">
<input class="form-control" type="file" name="files[]" id="uploaded_files" accept="png|jpg|jpeg" required="required" multiple>
</div>
</div>
</form>
</body>
Это мой PHP-код ..
<?php
if(isset($_POST['submit'])){
$firstName = trim($_POST['name']);
$middleName = trim($_POST['middleName']);
$uploadedImage = array();
$uploadedImageName = array();
if(isset($_FILES['files']['tmp_name'])){
$num_files = count($_FILES['files']['tmp_name']);
echo $num_files;
if($num_files == 5){
for($i = 0; $i < $num_files; $i++){
$imgName = addslashes($_FILES['files']['tmp_name'][$i]);
$name = addslashes($_FILES['files']['name'][$i]);
if($_FILES['files']['tmp_name'][$i] != ""){
$imageContents = file_get_contents($imgName);
$encodedImage[$i] = base64_encode($imageContents);
$filename[$i] = $_FILES['files']['name'][$i];
array_push($uploadedImageName, $filename[$i]);
array_push($uploadedImage, $encodedImage[$i]);
echo "I got the file..<br>";
echo ",,".$filename[$i];
echo $encodedImage[$i];
}
}
} else{
echo "Number of files should be equal to 5";
return;
}
} else{
echo "Files not found..";
}
$mysqli = new mysqli("localhost", "root", "", "people");
if(mysqli_connect_error()){
echo mysqli_connect_error();
exit;
}
// insert and execute query
?>
Вы пропали enctype="multipart/form-data">
в вашем теге формы
Ваш form
элемент будет
<form id="profile-form" action="" method="post" enctype="multipart/form-data">
Других решений пока нет …