Forms 如何保存表单输入-在使用动态菜单列表提交表单后??Zend框架

Forms 如何保存表单输入-在使用动态菜单列表提交表单后??Zend框架,forms,zend-framework,preserve,Forms,Zend Framework,Preserve,我试图保留动态菜单下拉列表中的用户输入-当用户在下拉列表中选择选项后提交表单时,我有许多DrowDowns和一个用户输入文本字段 我希望能够保留最后做出的选择,以便用户在文本字段中使用另一个值重新发布表单时不必再次重新选择选项,我还希望这也能处理错误 Im使用ZF验证表单 我在选项的值attr中尝试了以下代码: <option value="<?php if ($_POST && errors) { echo htmlenti

我试图保留动态菜单下拉列表中的用户输入-当用户在下拉列表中选择选项后提交表单时,我有许多DrowDowns和一个用户输入文本字段

我希望能够保留最后做出的选择,以便用户在文本字段中使用另一个值重新发布表单时不必再次重新选择选项,我还希望这也能处理错误

Im使用ZF验证表单

我在选项的值attr中尝试了以下代码:

            <option value="<?php if ($_POST && errors) {
         echo htmlentities($_POST['CategoryID'], ENT_COMPAT, 'UTF-8');
            }?>">Main Category</option>

我强烈建议使用Zend_表单。如果这是不可能的,我将下一次使用手动构建您的HTML。然后您可以在视图中使用
表单选择
,如下所示:

echo $this->formSelect('CategoryId', $selected, $attribs, array(
         'main' => 'Main Category'
         // ... other options
     ));

其中,
$selected
变量等于以下值之一:过账值、默认值或为null,
$attribs
变量只是select元素的属性

对不起,我不明白你的意思。您还使用Zend_表单吗?如果您想保留全局($_POST)变量的值,您需要在提交表单后在访问的第一页捕获其值,否则$_POST值将丢失。我不知道你的表单是如何提交的,但我可以告诉你这么多。此外,如果你使用Zend_form full-funded,ZF会在你使用表单对象的isValid()方法验证表单时帮你处理。谢谢,不要使用Zend_form,我使用的是html表单和Zend_validate,表单是一个POST方法,它将数据提交到mysql数据库,表单操作在提交后返回到自身,此时我希望保留所选下拉列表中的原始数据。如果我说不通,请告诉我!谢谢谢谢,我已经看过zend_表单了,我会尝试一下,因为它似乎给了我想要的,我总是被“视图”这个词弄糊涂,这是什么意思?我买了一本书,读了一些教程,认为我现在拿到了,不确定ZF适合我?有点超出我的能力!