最善の方法は、すべてのPOST変数を次のようなセッションに配置することです。
page1.phpに置く:
//Start the session
session_start();
//Dump your POST variables
$_SESSION['post-data'] = $_POST;
そして、page2.phpに置く:( page1.phpで、通常のPOSTフォームを使用する場合はフォームaction="page2.php
"で送信します)
//Start the session
session_start();
//Access your POST variables
foreach ($_POST as $key => $value) {
${$key} = $value;
$_SESSION[$key] = $value;
}
//Unset the useless session variable
unset($_SESSION['post-data']);
またはpage2.phpに置く:( page1.phpでフォーム付きの自己送信を使用しaction="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>
、次にaを使用header("Location: page2.php");
してpage2.phpに移動し、セッションを介してPOST変数を渡す場合)
//Start the session
session_start();
//Access your POST variables
$_POST = $_SESSION['post-data'];
foreach ($_POST as $key => $value) {
${$key} = $value;
$_SESSION[$key] = $value;
}
unset($_SESSION['post-data']);
すべてのフォーラムがそれを間違っているか不完全であると言ったので、私は文字通りそれを理解するのに何時間も費やしました。
これで、たとえば、page1.phpから渡した変数を次のように呼び出すだけで簡単になります。これで完了です<b>Points: </b><?php echo $points; ?>
。
header('Location: page2.php');
条件などに配置するときif
は、ページの最初のPHPスクリプト内で、HTML出力の上にあることを確認してください。