不显示或处理Zend Framework POST数据

时间:2013-08-02 04:56:37

标签: php zend-framework

这是我的表格:个人资料表格

它有两个元素password和passwordConf

    $this->password= new Zend_Form_Element_Password("password",array("label"=>"Password","required"=>true));
    $this->passwordConf= new Zend_Form_Element_Password("confpassword",array("label"=>"Retype","required"=>true));
    $this->passwordConf->addValidator("Identical",array("token"=>"password"));
    $this->save=new Zend_Form_Element_Submit("save",array("label"=>"Change Password","class"=>"btn btn-primary"));

所以我在控制器中有一个这样的实例并将其传递给POST数据

    $profileForm= new Application_Form_Profile();

    if($_POST)
    if($profileForm->isValid($_POST))
    {

        $membersTable= new Application_Model_DbTable_Members();
        $member=$membersTable->find($this->user->id)->current();
        $member->password=sha1($profileForm->getValue("password").$member->salt);
        $this->_helper->flashMessenger(array("type"=>"success","content"=>"Password Changed!"));
        $this->_redirect("");

        $member->save();
    }

    $this->view->profileForm=$profileForm;
}

但出于某种原因,我收到了Zend Empty Error消息。我还注意到表单字段没有填充。 我检查了Chrome中的响应,看起来后期数据传输到页面就好了。甚至做了一个print_r(POST),甚至看起来很好,所有的数据花花公子。我在上面的代码块之前和之后做了那个,但是没有用。尽管传递了数据,但它不会填充表单。

PS:错误消息仅用于密码确认字段。密码字段工作正常

1 个答案:

答案 0 :(得分:0)

这里的问题是类变量的名称和元素的名称必须匹配

$this->passwordConf= new Zend_Form_Element_Password("confpassword",array("label"=>"Retype","required"=>true));

$this->passwordConfconfpassword不应该不同,否则会发生此错误