php - 从表单输入中检索数据
问题描述
我正在尝试从使用 symfony 创建的表单输入中检索数据
这是我的 FormUploaderType:
class FormUploaderType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('service', ChoiceType::class, [
'placeholder' => 'Wybierz serwis',
'choices' => [
'home' => 'home',
'az' => 'az',
'ionos.bg' => 'ionosbg',
'ionos.ro' => 'ionosro',
'ionos.hu' => 'ionoshu',
],
'mapped' => false,
])
->add('date', DateType::class)
->add('terms', FileType::class)
->add('button', SubmitType::class);
}
这里是我的表单在 html 中的样子:
我正在尝试从 form_uploader_date 输入中获取数据,但是这行代码:
$date = $form->get('form_uploader')->getData();
或者:
$date = $form->get('form_uploader[date]')->getData();
似乎不起作用...我不知道该怎么办...
解决方案
你处理请求了吗?你应该这样做:
$form = $this->createForm(CLASS);
$form->handleRequest($request);` // you should inject Request from HttpFoundation namespace
之后,验证您的请求是否是POST
这样的:
if($form->isSubmitted() & $form->isValid()) {
$data = $form->getData();
// This array holds all your data.
// Use this instead of accesing each element as $form->get('property-name')->getData();
}
注意:如果您的表单类与实体/模型相关联,则该表单将映射到该类。否则,它将只是一个数组。您不需要以这种方式访问它。此外,您可以使用dump()
or dd()
(对于 Symfony 4.x +)函数来使用漂亮的格式转储您的内容。
推荐阅读
- git - 如何用另一个(上游)分支覆盖 GIT 分支中的所有文件?
- dataframe - R使用数据框时更改数据值
- javascript - how to displayed key and value in functional component inside return part
- accessibility - WCAG 2.0 AA 要求链接和周围文本之间的颜色对比度为 3:1?
- autodesk-forge - Autodesk Forge Viewer - 放大比例
- python - python/flask 应用程序码头化期间的问题
- flutter - 将 Dart 中的地图更新到 Firestore
- c# - 如何检查可空 int 类型的查询字符串是否无效?
- c# - #c 异步 MySqlConnector
- javascript - v-tab-item 内容上的引用在挂载的钩子中为空