私が理解していることから、あなたはセッションを開始しており、その後、誰かがテキスト領域に入力した内容に基づいて $_SESSION 変数を作成したいと考えています。ユーザーがプレビューをクリックしたときにページを変更したくない場合 (ただし、将来の状況で $_SESSION 変数を使用できるようにしたい場合)、AJAX などを使用する必要があります (前述のとおり)。このようなことを達成するために私が見つけた最も簡単な方法は、jQuery と AJAX を一緒に使用することです。
基本的に、プレビュー ボタンがクリックされるたびに選択する JavaScript 関数を (jQuery を使用して) 作成します。このようになります。最初に、input タグ内に id を追加します...
<input type="button" id="previewID" name="Preview" value="Preview Description">
次に、javascript ファイルに関数を作成します...
$('#previewID').click(function() {
request = $.ajax({
url: "/form.php",
type: "post",
data: serializedData
});
});
form.php は単純に、$_POST['ShortDescription'] が存在するかどうかを確認するフォームであり、存在する場合はサニタイズして $_SESSION['ShortDescription'] に保存します。「serializedData」は、渡されるテキスト領域のコンテンツです。(実際には変数の内容を URL 経由で渡すだけです。たとえば、ShortDescription = "HelloThere" の場合、シリアル化されたデータは " ShortDescription=HelloThere
" になり、URL に次のように追加されます...
" www.website.com/form.php?ShortDescription=HelloThere
"
通常、これを手動で設定することはないことに注意してください。これは、概念を示すためのものです。次のようなものを使用します。
var serializedData = $form.serialize();
AJAX リクエストの例については、この質問をご覧ください。
免責事項:これを達成するためのより良い方法があるかもしれませんが、誰もまだ答えていないので、1つの可能性を提供すると思いました!