使用session或post传递PHP变量

时间:2014-01-15 21:51:28

标签: php variables session post session-variables

我正在尝试从支付网关获取回复,并将所选结果显示在结果页面上,“approved.php”。我需要将变量从此代码传递给“approved.php”。有关如何使用SESSION或POST进行编码的任何建议吗?

        if ($_POST["check"] != "1")
            {}//do nothing
        if($response_array[3]=="This transaction has been approved.")
            {
        session_start ();
        $_SESSION[($response_array[7])] = $trans_id;
        echo '<script language="Javascript">';
        echo 'window.location="/approved.php"';
        echo '</script>';
            }
        else
            {
        echo '<script language="Javascript">';
        echo 'window.location="/declined.html';
        echo '</script>';
            }

然后在approved.php上

session_start();
$trans_id = $_SESSION['trans_id'];
echo $trans_id;

这不起作用。我在approved.php上遇到会话已经启动错误,并且没有传递任何变量。任何帮助表示赞赏。

2 个答案:

答案 0 :(得分:1)

我不知道你的数组$ response_array是什么样的,但如果它的第8个元素不是字符串“trans_id”,那就是问题所在。也许你想要:

$_SESSION['trans_id'] = $trans_id;

$_SESSION['trans_id'] = $response_array[7];

答案 1 :(得分:0)

根据您的问题,您的作业应如下所示:

$_SESSION['trans_id'] = $response_array[7];

虽然如果仅在accept.php

上需要,我会使用POST来存储你的trans_id