Php Symfony-表单在提交后清除其他行中的数据
我有两种不同的表格。一个是更改用户名,第二个是更改登录名。当我提交其中一个时,第二个将清除数据库中的数据。他们似乎有联系,但我不知道怎么联系 我的控制器Php Symfony-表单在提交后清除其他行中的数据,php,forms,symfony,Php,Forms,Symfony,我有两种不同的表格。一个是更改用户名,第二个是更改登录名。当我提交其中一个时,第二个将清除数据库中的数据。他们似乎有联系,但我不知道怎么联系 我的控制器 $user = $this->getUser(); $uform = $this->createForm('MainBundle\Form\UsernameType', $user); $uform->handleRequest($request); $jform = $
$user = $this->getUser();
$uform = $this->createForm('MainBundle\Form\UsernameType', $user);
$uform->handleRequest($request);
$jform = $this->createForm('MainBundle\Form\JloginType', $user);
$jform->handleRequest($request);
if ($uform->isSubmitted() && $uform->isValid()) {
$this->getDoctrine()->getManager()->flush();
} elseif ($jform->isSubmitted() && $jform->isValid()) {
$this->getDoctrine()->getManager()->flush();
}
形式
小部件
{{ form_start(jform, { 'action': path('home_page'), 'attr': { 'class': 'fos_user_profile_edit cbp-mc-form' } }) }}
<div>
{{ form_label(jform.jLogin, 'New username') }}
{{ form_widget(jform.jLogin) }}
</div>
<div>
<input class="cbp-mc-submit" type="submit" value="{{ 'Confirm'|trans }}"/>
</div>
{{ form_end(jform) }}
{{ form_start(uform, { 'action': path('home_page'), 'attr': { 'class': 'fos_user_profile_edit cbp-mc-form' } }) }}
<div>
{{ form_label(uform.username, 'New username') }}
{{ form_widget(uform.username) }}
</div>
<div>
<input class="cbp-mc-submit" type="submit" value="{{ 'Confirm'|trans }}"/>
</div>
{{ form_end(uform) }}
如何在数据库中只插入提交表单中的一个数据?处理请求后,这些用户字段的值是多少?这并不能回答确切的技术问题,但我想知道您是否在一开始就过度设计了这些数据。为什么不使用一个表单并根据字段的状态处理提交,而不是依赖于使用了多个表单中的哪一个?
{{ form_start(jform, { 'action': path('home_page'), 'attr': { 'class': 'fos_user_profile_edit cbp-mc-form' } }) }}
<div>
{{ form_label(jform.jLogin, 'New username') }}
{{ form_widget(jform.jLogin) }}
</div>
<div>
<input class="cbp-mc-submit" type="submit" value="{{ 'Confirm'|trans }}"/>
</div>
{{ form_end(jform) }}
{{ form_start(uform, { 'action': path('home_page'), 'attr': { 'class': 'fos_user_profile_edit cbp-mc-form' } }) }}
<div>
{{ form_label(uform.username, 'New username') }}
{{ form_widget(uform.username) }}
</div>
<div>
<input class="cbp-mc-submit" type="submit" value="{{ 'Confirm'|trans }}"/>
</div>
{{ form_end(uform) }}
UPDATE fos_user SET username = ?, username_canonical = ?, jLogin = ? WHERE id = ?
Parameters: [0 => null, 1 => null, 2 => jlogin, 3 => 5]