Как загружать несколько изображений и получать массив имен php ajax file redbeanphp

У меня есть скрипт загрузки одного файла на сервер, и получение его имени в базе данных. Реализовано с помощью ajax. Так же мой скрипт отправляет в бд помимо изображения еще и текст. Мне надо что бы на сервер добавлялось одно и/или много изображений, и в бд отправлялся массив, в котором были бы названия всех изображений, которые были отправлены. (+ я использую orm redbean php)

Разметка:

<form class="form-add" method="POST" enctype="multipart/form-data">
   <input id="formAddTitle" type="text" name="title">
   <input id="postUploadFileInput" type="file" name="image[]" multiple>
   <p class="ds-none">Ошибка!</p>
   <button type="submit" onclick="formAdd(event,this)">Отправить</button>
</form>

AJAX:

function formAdd(e) {
    e.preventDefault();

    var file_data = $('#postUploadFileInput').prop('files')[0];   
    var form_data = new FormData();
    form_data.append('image', file_data);
    form_data.append('title', $("#formAddTitle").val());

    $.ajax({
        url: '/product-script.php',
        type: 'post',
        dataType: 'json',
        cache: false,
        contentType: false,
        processData: false,
        data: form_data,
        success: function(data){
            if ( data.status ) {
            } else {
                $('.errors-cont').removeClass('ds-none').text(data.message);
                // Это вывод ошибок
            }
        }
    });
};

product-script.php:

$data = $_POST;

// Добавление Товара
$errors = array();

if( trim($data['title']) == '' ) {
   $errors[] = 'Введите название товара.';
}
// я убрал миллион проверок, что бы вы могли быстрее перейти к сути ↓

if( empty($errors) )
{
   $product = R::dispense('products');
   $product->title = trim($data['title']);
   $product->image = $_FILES['image']['name']; // Это добавление имени файла в бд
   R::store($product);

   move_uploaded_file($_FILES['image']['tmp_name'], __DIR__.'\product-image\\'.$_FILES['image']['name']); // Это загрузка одного файла, очень хорошо работает!

   $response = [
      "status" => true
   ];
   // Если OK
   echo json_encode($response);
}

if( ! empty($errors) )
{
   $response = [
      "status" => false,
      "message" => array_shift($errors)
   ];
   // Если Error
   echo json_encode($response);
}

Как в моем случае сделать загрузку одного и/или много изображений на сервер, и в бд отправлять массив, в котором были бы названия всех изображений? Помогите пожалуйста!


Ответы (0 шт):