PHP Form — выгрузка файлов, желающих использовать Silex, но не FormBuilder

Я использую Silex для создания приложения, хотя это не типичная установка Silex.

У меня усы как шаблонный двигатель.

Я не использую Doctrine для ORM / DBAL, я использую капсулу (Силекс-Красноречивый), и у меня возникли серьезные проблемы с тем, чтобы обернуть голову вокруг этого.

В настоящее время у меня есть форма:

<form class="form-horizontal" role="form" action="app.php/listing" method="POST" id="listing-submit">

<div class="form-group">
<label class="control-label col-sm-2" for="title">Listing Title</label>

<div class="col-sm-6">
<input id="title" class="form-control" type="text" size="40" autocomplete="off"data-encrypted-name="title"/>
</div>
</div>

<div class="form-group">
<label class="control-label col-sm-2" for="description">Description</label>

<div class="col-sm-6">
<textarea id="description" class="form-control" rows="8"></textarea>
</div>
</div>

<div class="form-group">
<label class="control-label col-sm-2">Images</label>

<div class="col-sm-6">
<input type="file" name="images[]" id="images" multiple/>
</div>
</div>

<div class="form-group">
<div class="col-sm-offset-2 col-sm-6">
<button type="submit" class="btn btn-default">Submit</button>
</div>
</div>

</form>

Тем не менее, которые я использую для выбора файлов, во всех примерах, которые я до сих пор видел в Silex и загрузке файлов, используется что-то, с чем я не знаком, и не уверен, что смогу приспособить его для своего использования: FormBuilder , FormBuilderInterface, регистрация пользовательских типов и все такое джаз …

Это часть контроллера до сих пор:

$app->post("/plisting", function () use ($app) {

// $params = $request->all();
$request = $app['request'];
$title = $request->get('title');
$description = $request->get('description');
$image = $request->files->get('image');

// $file->move(__DIR__ . '/files', $file->getClientOriginalName()); // return "done";

return "<pre>Class for request: " . get_class($request) . "<br>Title: $title <br>Description: $description<br>File: $image </pre>";
});

Обратите внимание, я использую ajax для обработки загрузки файлов.

Мне любопытно, может ли кто-нибудь помочь мне с использованием установки и установки Silex для загрузки файлов, или я должен просто использовать не-фреймворковый PHP для обработки загрузки файлов?

Я нахожусь в ментальном блоке и могу использовать руку; Спасибо!

2

Решение

Для отправки файлов на сервер браузер должен кодировать свои данные, используя многочастному / форм-данных,, так что вы должны просто попытаться добавить атрибутenctype='multipart/form-data' к вашей форме (которая в настоящее время отсутствует).

Увидеть Вот для дополнительной информации.

5

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]