[PHP-users 6828] Formのデータを保持する方法

Yamazoe php-users@php.gr.jp
Fri, 12 Apr 2002 07:04:05 +0900


皆さん初めまして、yamazoeと申します。
まだ、PHP初心者です。問題に直面しても今まで何とか自力で
解決してきましたが、どうしても1つだけ解決出来そうに無いので
お知恵を拝借したく出て参りました。

過去ログでも調べましたが、調べようが悪いのか、
解決に至っていません。(話題は多いようですが)

その問題ですが、まずformの入力画面からデータを入力し
postでsubmitします。
そのaction先は同じPHPファイルであり、セッションを利用して
送信ボタンの変数で判断し処理をわけています。

さて、受け取った変数の内容をチェックしてエラーがあれば
その旨を表示するのですが、再入力の為にブラウザの「戻る」
やJavaScriptのhistory.back()では、フォームで入力されている
データが残っていないので多量の入力がある場合、すごく
非能率的です。このフォームの内容を保持する方法は無いので
しょうか。

今まで、この対策としてエラーチェックをJavaScriptで行い、
送信後はそのままDB(postgres)へ保存させていました。
しかし、JavaScriptでチェックの出来ない処理(今回はE-Mailの
重複チェック、DBからの読み込みが伴う)の場合が出てきました。

【今までにやってみた事】
1. session_start(); のあとに session_cache_limiter("Pablic");
2. フォームの全ての変数をsession_register()で登録
 (代入は送信された後でしか出来ないが・・・)


何か、解決方法がありましたらご教授の程お願いいたします。

Linux7.0J + Apache1.3.20 + PHP4.06 + Postgres7.1.2