ZF2表单在提交时未显示所有字段值

时间:2017-04-17 08:30:58

标签: forms zend-framework input

在其中创建一个新模块和一个表单,但是当我提交表单时,只打印一个字段,其中所有其他字段的值都没有得到它们的值:

有超过10个字段,但只有电子邮件字段正在打印其值,其他所有字段都是空的。

这就是我的形式:

public function __construct($name = null)
 {
     // we want to ignore the name passed
     parent::__construct('company');

     $this->add(array(
         'name' => 'id',
         'type' => 'Hidden',
     ));


     $this->add(array(
         'name' => 'email',
         'type' => 'Text',
         'options' => array(
             //'label' => 'Strasse',
            // 'placeholder' => 'Email'

         ),
         'attributes' => array(
        'placeholder' => 'Email',
        ),

     ));
     $this->add(array(
         'name' => 'firstname',
         'type' => 'Text',
         'options' => array(
             //'label' => 'Strasse',
            // 'placeholder' => 'Email'

         ),
         'attributes' => array(
        'placeholder' => 'Vorname',
        ),
     ));

     $this->add(array(
         'name' => 'submit',
         'type' => 'Submit',
         'attributes' => array(
             'value' => 'Go',
             'id' => 'submitbutton',
         ),
     ));
 }

我在我的模态中获取值如下,但它没有显示所有值。

 public function saveCompany(Company $company)
 {
     $data = array(
         'firstname'      => $company->firstname,
         'email'        => $company->email,

     );
     echo '<pre>'; print_r($data);
        exit;

我错过了什么错误你能指出并告诉我你是否需要更多的代码来展示这里。

Out Put Image

1 个答案:

答案 0 :(得分:0)

我修复了exchageArray功能错过的字段我更新了它,现在工作正常:

public function exchangeArray($data)
 {
     $this->id              = (!empty($data['id'])) ? $data['id'] : null;
     $this->vorname         = (!empty($data['vorname'])) ? $data['vorname'] : null;
     $this->nachname        = (!empty($data['nachname'])) ? $data['nachname'] : null;
     $this->email           = (!empty($data['email'])) ? $data['email'] : null;
     $this->volstangir      = (!empty($data['volstangir'])) ? $data['volstangir'] : null;
     $this->strasse         = (!empty($data['strasse'])) ? $data['strasse'] : null;
     $this->hausnummer      = (!empty($data['hausnummer'])) ? $data['hausnummer'] : null;
     $this->plz             = (!empty($data['plz'])) ? $data['plz'] : null;
     $this->ort             = (!empty($data['ort'])) ? $data['ort'] : null;
     $this->telenummer      = (!empty($data['telenummer'])) ? $data['telenummer'] : null;

 }