Zend Framework提交2个表单,1个提交[关闭]

问题描述 投票:-1回答:1

好吧这听起来很简单,但有一个问题。我会试着解释一下情况。

我有一个用布局构建的页面,在中心有一个带有2个按钮和普通表单的视图。 2个按钮用于在两个输入表单之间切换。按下提交后,将提交两个表单。第一种形式用于一般信息,第二种形式用于上传图像以及信息(如果需要)。

现在避免问题为什么不使用一个表格?这是要求以这种方式保持两个分开。

所以我考虑使用2个视图,其中前2个按钮将像提交一样,创建带有表单数据的POST请求,但实际上并未将其提交到数据库。然后重定向到第二个视图,您可以在其中上传图像。

然后当按下实际提交按钮时,我希望收集的所有数据都写入数据库。

基本上它就像一个带有2个标签的页面,每个标签都有一个表单,只有1个提交按钮,用于在两个标签上提交表单。

我无法理解如何创建这两个按钮来存储帖子数据,然后让“最终”提交按钮使用之前的帖子数据,然后使用其他表单数据创建一个新的组合帖子数据来存储数据库。

任何人都知道如何实现这一目标?我正确地接近这个还是有更简单或更清洁的方法来做到这一点?

提前致谢!

forms zend-framework
1个回答
1
投票

这里有许多选项,一个选项是创建一个表单并将两个单独的部分添加为SubForms,即Zend_Form_SubForm的实例。然后,您可以单独设置表单的样式,选中它们,但为两者保留一个提交按钮。同样,当您提交时,表单数据将被分成每个子表单的数组元素。

你可以在这里看到更多相关信息:

http://framework.zend.com/manual/en/zend.form.advanced.html#zend.form.advanced.multiPage

我喜欢的另一个解决方案是使用动作助手来分割将表单添加到两个页面的过程,类似于上面的url,但是将表单信息存储在会话对象中,直到两者都被验证,然后立即处理两个表单。

http://framework.zend.com/wiki/display/ZFPROP/Zend_Controller_Action_Helper_Multiform+Proposal+-+Simon+Mundy

http://framework.zend.com/wiki/pages/viewpage.action?pageId=42130

希望这可以帮助。

© www.soinside.com 2019 - 2024. All rights reserved.