0

mail.php ファイルからそれを呼び出したファイルにエラー メッセージを渡すためのセッション変数を作成します。

session_start();
if(something) {
    $_SESSION['error'] = "something went wrong";
}

mail.php と呼ばれるファイルでそれを読み取ろうとします。

if(!empty($_SESSION['error'])) {
    echo $_SESSION['error'];
} else {
    echo "Email sent!";
}

しかし、それは機能していません。両方のファイルのページの上部にある session_start() を呼び出します。

var_dump はこれを与えます:

array(1) { ["error"]=> string(41) "Not all fields are filled in." } ­
4

2 に答える 2

0

session_write_close();セッション コールの最後に使用します。

于 2012-09-10T13:42:18.937 に答える
0

セッション変数は、ページをリロードしたときにのみアクセスできます。同じページロードではアクセスできません。私もこの問題に遭遇しました。たぶん実行順序か何かに依存します。

セッション変数が設定されていない場合は、グローバル配列をバックアップとして使用しようとしています。

if(!isset($_SESSION['var'])) $x = $_GLOBALS['var'];
于 2012-09-10T13:15:55.153 に答える