我想访问我在另一个 php 文件中声明的 session 变量。
我该怎么做?
这是我做的。
测试.php
$_SESSION['SESS_VERSION'] = $member['Version'];
session_write_close();
header('location: '.$_SESSION['SESS_VERSION']);
这个 session 变量正在工作,我被正确地重定向到另一个页面。
例如在那个页面上:
test2.php
我正在从 javascript 调用一个 php 脚本来返回一个 JSON 格式的数据。
我在 test3.php
脚本中尝试做的是从 test.php
访问 session 变量
代码如下:
<?php
header("Content-type: application/json; charset=UTF-8");
echo '{ "results" : [ ';
$result = dbMySql::Exec("SELECT
m.data1
v.data2,
k.data3
FROM {$_SESSION['SESS_MAIN_BASE']} m, {$_SESSION['SESS_SECOND_BASE']} v, {$_SESSION['SESS_THIRD_BASE']} k");
$result_array = array();
?>
为什么我无法访问此 php 页面上的任何 session 变量?也许我的语法不正确。但这是我得到的错误:
Warning: Cannot modify header information - headers already sent
当然还有变量为空的错误。
最佳答案
你需要
session_start()
在每个 php 脚本的顶部,否则 session 变量在 php 文件中没有意义。
你也得到了 Cannot Modify header 错误,因为你有
Here's the code:
在标题之前发送到浏览器,将所有标题功能移动到任何内容之前
关于php - 从另一个 php 文件访问 SESSION 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11232848/