我是PHP的新手......并且有一个REST api,当用户登录时会设置会话变量:
$a = session_id();
if(empty($a)) session_start();
$_SESSION['id']=...
当我在同一个浏览器(anoter tab)中调用testFunction时,session var仍然是相同的:
$sessionID = session_id();
if(empty($sessionID)) session_start();
echo($_SESSION['id']);
当我稍后在页面上打开iframe时,它仍然没问题。
但是,当iframe中的页面重新加载到另一个网址时,会话就会丢失......
$_SESSION['id'] // gives error: Undefined index: id
也就是说,我总是停留在同一页面,但我的iframe正在改变网址。
我是否想念php会话变量?我想念它吗?既?
答案 0 :(得分:0)
你也需要在iframe代码上调用session_start()
,你实际上是在调用吗?
答案 1 :(得分:0)
当您使用会话时, 需要来呼叫session_start()
。您无需检查session_id()
。
session_start()
根据通过GET或POST请求传递的会话标识符创建会话或恢复当前会话,或通过cookie传递。