1

全てにおいて良い日、

フォームを表示するたびに ajax を使用して読み込まれるサブフォームに分割された、約 90 から 100 のフィールドを持つフォームがあります。しかし、サブフォームが読み込まれるたびにフォームフィールドのデータを保持したいと思います(偶発的なページの更新や、ユーザーがサブフォームを切り替えている場合でも)。これを行うための最良の方法は何ですか。

私はそれをクッキーに保存したり、データベースに保存したりできると考えていました。ただし、データベースに保存すると、サブフォームが読み込まれるたびにフィールドデータを照会する必要があります。また、Cookie の場合は、Cookie ファイルに保存されているデータを読み取る必要があります。速度の点で、最も効率的な方法を決定するための助けが必要です。

これらの中で最善の方法は何ですか、またはロードされるたびにフィールドデータをサブフォームに保持する他の可能性はありますか (毎回 AJAX を介してロードされます)。

PHP と Codeigniter フレームワークを使用しています。

ありがとう!!

4

3 に答える 3

3

そのようなフォームは永続的に保存する必要があります。ユーザーが重要な何かを更新するたびにデータベースに書き込み、サブフォームの読み込みをスムーズにするためにセッション状態を検討します。個人的には、データベースのみのソリューションから始めて、パフォーマンスが問題になる場合はセッション状態を追加します。

Cookie は、大量のデータを保存するためのものではありません。たとえそれ可能であったとしても、彼らはリクエストをかなり肥大化させます (リクエストごとに 100 個のフォーム フィールドがすべて送信されると想像してください)。

ブラウザーのローカル ストレージもオプションですが、他のオプションを最初に検討します。

于 2013-03-06T03:31:59.240 に答える
2

データベースの散文他のコンピューターからもアクセスできますCookieよりもはるかに多くのデータを保存できますコーンajaxでデータを取得すると、サーバーの負荷が高くなります

Cookieはデータベースよりも高速で、クエリ、フェッチ、およびすべてのプロセスはありません。コーン限られたスペース

ただし、ローカルストレージを使用できます

答えはデータベースストレージです

于 2013-03-06T03:46:26.997 に答える