4

コントローラーを使用して複数ページのフォームを作成しています。提出済みおよび未提出のアプリケーション データをデータベース フィールドに保存しています。

$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));

しかし、有効なページ配列を持つオブジェクト全体も必要です。

答えはこのページstoreDataSources()に隠されていると思いますが、addDataSource()との組み合わせでは機能しませんでしたsetDataSources()setSessionContainer()メソッドが不足しているようです。

これはこのフォーラムでの最初の質問です。私はすべてのルールに固執しようとしました。愚かな間違いを犯した場合、またはこれが愚かな質問である場合は、訂正してください。

4

1 に答える 1

0

Quickform2 の使い方を誤解していると思います。複数ページのフォームで作業する必要がある場合は、QuickformController を利用する必要があります: http://pear.php.net/manual/en/package.html.html-quickform2.controller-overview.php

于 2013-09-19T14:10:05.603 に答える