gpt4 book ai didi

PHP 表单 - 上传文件,想要使用 Silex 但不想使用 FormBuilder

转载 作者:行者123 更新时间:2023-12-02 06:46:59 25 4
gpt4 key购买 nike

我正在使用 Silex 构建应用程序,尽管这不是典型的 Silex 设置。

我使用 Mustache 作为模板引擎。

我没有使用 Doctrine 进行 ORM/DBAL,我使用的是 Capsule (Silex-Eloquent) ,并且我在解决这个问题时遇到了一些严重的问题。

目前我有一个表格:

<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、注册自定义类型以及所有这些爵士乐......

这是迄今为止的 Controller 部分:

$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 来处理文件上传?

我现在遇到了心理障碍,需要帮忙;谢谢!

最佳答案

为了将文件发送到服务器,浏览器必须使用multipart/form-data对其数据进行编码,因此您应该尝试添加属性enctype='multipart/form-data' 添加到您的表单(目前缺少)。

参见here了解更多信息。

关于PHP 表单 - 上传文件,想要使用 Silex 但不想使用 FormBuilder,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32698218/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com