2017-03-26 18 views
0

私はデータを別のフォームに提出する初期フォームを持っており、そのフォームはそれ自体にデータを送信します。問題は、そのフォームがそれ自身にデータを提出すると、元のフォームから提出されたすべてのデータが失われることです。 2番目のフォームが更新された後も初期データが保持されるようにする方法はありますか?私はこれがセッションを使用して可能であることを知っていますが、これを行う別の方法がありますか?私は隠れたフィールドを利用して行うことができると言っている少数の読者を読んだことがありますが、どうやってこれを行うのか分かりません。私が必要とするのは、どのようにその完了を見るための簡単な例です。送信後にフォームから変数を保存する方法は? PHP

+0

あなたがjavascriptで快適ならば。あなたのローカルストレージに保管してください。 –

+0

2番目の形式では、非表示のフィールドを保持します。最初のフォームの提出でフォーム1のデータをこの隠しフィールドに割り当てます。 – Ajay

+0

ローカルストレージを試しましたか? 'localStorage.getItem(" lastname ");'値を削除するには 'localStorage.removeItem(" lastname ");' Localstorageはクライアントベースの記憶域です。( 'lastStatus.setItem(" lastname "、" Smith "); 、PHPと直接対話しない –

答えて

0

はあなたがform内でこのタグを持っているとしましょう:

<input type="text" name="foo"> 

あなたはそこにいくつかの値を入力すると、あなたが$_POST["foo"]で、サーバー側でそれを達することができるようになります。ここで、ターゲットページの応答の別のformがあるとしましょう。あなたはこのように、この値を含めることができます。ここでは

<input type="hidden" name="foo" value="<?php echo isset($_POST["foo"]) ? $_POST["foo"] : ""; ?>" 

あなたは、与えられた値が掲載されたかどうかをチェックし、もしそうなら、掲示値はinputの値になります。そうでなければ、inputの値は空文字列になります。このhiddeninputを含むformを転記すると、valueも転記されます。

既に言及したように、これを行うもう1つの方法は、値を$_SESSIONに保存して再利用することです。また、値をデータベースに格納して読み込むこともできます。

+0

私はどのように非表示のフィールドが使用されるのか見ていますが、私の問題は、フォームが送信されると古いデータを忘れてしまうことです。 SESSIONを使わずにフォームに入力されている新しいデータとともに元のデータを保持する方法はありますか? – Brit24

関連する問題