Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Symfony-表单在提交后清除其他行中的数据_Php_Forms_Symfony - Fatal编程技术网

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]