1

我正在尝试使用会话中保存的数据填充 HTML 表单。这是我到目前为止所做的,但它不起作用:

在我的控制器中:

      $sessionErrorForm = new Zend_Session_Namespace('errorForm');

      $sessionErrorForm->prenom     = $form['prenom'];

      $this->_redirect('/inscription');

在我看来,如果会话存在,我需要在值字段中显示一些内容:

 <div><input type="text" name="prenom" value="<?php if (isset($sessionErrorForm->prenom)): echo $sessionErrorForm->prenom; endif;?>" title="Pr&#233;nom *"/>

在此先感谢您的帮助

4

1 回答 1

0

行。和这里一样。您总是必须先实例化您的 Session 才能访问它。您可以在控制器中声明它:

$session = new Zend_Session_Namespace('errorForm');
$this->view->sessionErrorForm = $session;

并在您的视图中访问它$this->sessionErrorForm

<div><input type="text" name="prenom" value="<?php if (isset($this->sessionErrorForm->prenom)): echo $this->sessionErrorForm->prenom; endif;?>" title="Pr&#233;nom *"/>

或者你可以在你的视图中声明它并像下面这样使用它:

<?php $sessionErrorForm = new Zend_Session_Namespace('errorForm'); ?>    
<div><input type="text" name="prenom" value="<?php if (isset($sessionErrorForm->prenom)): echo $sessionErrorForm->prenom; endif;?>" title="Pr&#233;nom *"/>

但是,如果您在之前的请求中写入会话,如果您之前没有在范围内声明它,您总是必须创建对会话的新引用。

于 2012-09-24T10:14:42.690 回答