我有两个java服务侦听不同的端口,我通过RPC(Thrift)与PHP脚本进行通信
login.php通过POST收集用户名变量,允许进入home.php,发生以下情况
$user = $_SESSION['username'];
$result = thriftclient->callMethodFromFirstJavaService();
echo $user;
echo $result;
结果打印正常,用户名打印出来没有问题。所以我的会话变量不是空的。
home.php还有一个表单,它还通过帖子
再次收集另一个变量下一个文件profile.php激活第二个侦听不同端口的java服务。
$val = $_POST['val']
$user = $_SESSION['username'];
$result = thriftclient->callMethodFromSecondJavaService($val);
echo $user;
echo $result;
这次正确的结果再次打印出来(所以第二个服务被称为OK ...并且$ _POST变量在主页和配置文件之间不受影响)但是$ user一直返回为null。
是否存在SESSION变量特有的东西,当POST变量不存在时会导致它们丢失。
我正在放置session_start();在任何输出之前的文件顶部!
感谢您的帮助。