PEAR HTML_QuickForm2:如何在表单中恢复保存的会话容器

时间:2012-10-15 08:36:13

标签: php pear quickform

我正在使用控制器制作多页表单。我将提交和未提交的应用程序数据保存到数据库字段:

$serialized_data = $oCon->dbConn->real_escape_string(
    serialize($ctrl->getSessionContainer())
);
$oCon->dbConn->query(
    "INSERT INTO form_data SET (data) VALUES ('" . $serialized_data . "')"
);

这样可以正常工作但是如何将已保存的对象返回到会话中以获得未完成的条目? 使用getValue()

将值保存到数据库字段时,仅返回值
$ctrl->addDataSource(new HTML_QuickForm2_DataSource_Array($unserialized_data));

但我也需要有效页面数组的整个对象。

我认为答案隐藏在this page中,但我无法使用storeDataSources()addDataSource()setDataSources()的任意组合。似乎缺少setSessionContainer()方法。

这是我在这个论坛上的第一个问题,我试图坚持所有规则,如果我犯了愚蠢的错误或者这是一个愚蠢的问题,请纠正我。

1 个答案:

答案 0 :(得分:0)

我认为您误解了如何使用Quickform2。如果您需要使用多页表单,那么您想要使用QuickformController:http://pear.php.net/manual/en/package.html.html-quickform2.controller-overview.php