php - 如何在 symfony 上检索包含在另一种形式中的输入的值?
问题描述
在我的控制器中,我有以下代码:
$destinataires = [];
$destinataires[]= $emailclient;
for ($i = 1; $i <= 5; $i++)
{
$email = $request->request->get('emailclient'.$i);
if(filter_var($email, FILTER_VALIDATE_EMAIL)) {
$destinataires[] = $email;
}
}
当我将它用于表单(twig)中包含的输入时,它可以工作:
{{ form_start(formUpload, { 'attr' : { 'class': 'batsendform', 'multipart' : true } }) }}
{{ form_row(formUpload.filepreview) }}<p id="batupload">Glissez le BAT 3D PDF ici.</p>
<div style="text-align: center;"><button type="button" class="btn btn-primary" data-toggle="modal" data-target="#emailmodal">
Ajouter des destinataires
</button></div>
<!-- Modal -->
<div class="modal fade" id="emailmodal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel" style="color: black">Ajouter des emails destinataires du BAT</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<label style="color: black" for="emailclient1">Email 1 </label><input size="60" class="emailinput" type="email" name="emailclient1"> <br>
<label style="color: black" for="emailclient2">Email 2 </label><input size="60" class="emailinput" type="email" name="emailclient2"> <br>
<label style="color: black" for="emailclient3">Email 3 </label><input size="60" class="emailinput" type="email" name="emailclient3"> <br>
<label style="color: black" for="emailclient4">Email 4 </label><input size="60" class="emailinput" type="email" name="emailclient4"> <br>
<label style="color: black" for="emailclient5">Email 5 </label><input size="60" class="emailinput" type="email" name="emailclient5">
{{ form_end(formUpload) }}
但我想从外部形式(树枝)使用这些值:
...
{{ form_start(formRefus) }}
<label style="text-align: center;color: red;">Laisser des précisions au client. (Optionnel)</label>
<textarea rows = "3" cols = "70" name = "messagegr"></textarea>
{{ form_row(formRefus.submit) }}
{{ form_end(formRefus) }}
在我的控制器中使用相同的方法:
$formRefus = $this->createForm(RefusClientType::class);
$formRefus->handleRequest($request);
if ($formRefus->isSubmitted() && $formRefus->isValid())
{
$destinataires = [];
$destinataires[]= $emailclient;
for ($i = 1; $i <= 5; $i++)
{
$email = $request->request->get('emailclient'.$i);
if(filter_var($email, FILTER_VALIDATE_EMAIL)) {
$destinataires[] = $email;
}
}
}
但是这次返回的值为零。有没有人有办法解决这个问题?谢谢 :)
解决方案
推荐阅读
- r - 从 BASE R 函数中捕获特定错误消息
- excel - ".Find Date" 在月中点中断
- discord.py - Discord.py 重写让机器人响应 DM
- reactjs - 从 useHooks() 返回的对象作为道具传递,不会在成员列表中的 handleDelete 之后重新渲染子组件
- vim - 使用 Clojure CLI 时无法使用 fire.vim 评估 ClojureScript
- python-3.x - 对 API 的 POST 请求失败
- python - 使用返回不正确值的python函数向熊猫数据框添加转义字符
- python-3.x - python3中的lambda表达式问题
- python - 递归函数解释python(这部分在做什么?)
- javascript - 如何在 JavaScript 中获取 document.getElementById 检索到的 DOM 元素的第一级子元素?