我正在尝试使用会话中保存的数据填充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énom *"/>
提前感谢您的帮助
答案 0 :(得分:0)
确定。像here一样。您始终必须先实例化会话,然后才能访问它。您可以在控制器中声明它:
$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é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énom *"/>
但是,如果你在之前的请求中写入你的会话,你总是必须创建一个对你的会话的新引用,如果你之前没有在范围内声明它。