下午好!
我有一个网站,允许您通过Iframe登录并使用第三方应用。但是,一旦他们完成了他们的应用程序,它就会重定向到iframe内部的网站,只有当用户从iframe重定向到我们的网站时,他们才会在iframe内部登录。将会话从主机转移到Iframe的最佳方法是什么?
到目前为止,我已经在iframe www.test.com?sid=34324vcsd3里面了,我相信它很棒。但无论何时他们指示,他们都会将我重定向到当前未通过Iframe登录的www.mysite.com/page。即使我通过主页登录,我也没有通过Iframe登录。
我想我有两个选择 1.找到一种与Iframe分享会话的方法
或
2找到一种方法来使用HTTP_Referer在转移前从iframe页面中提取sessionID。
例如我从test.com?sid=3d3er3e3发送到www.test.com/page,其中test.com/page调用HTTP_referer。我可以成功获得test.com?sid=3d3er3e3,但我不确定如何提取SID
你们会推荐什么?是否可以与IFrame分享会话?或者有没有办法从http_referer字符串中提取sessionID?
或者如果你知道的话,推荐一个更好的解决方案 - 我对此很陌生,但花了一天时间试图解决这个问题。任何帮助将不胜感激。
答案 0 :(得分:1)
据我所知,您试图通过GET变量传递会话信息,而不是使用浏览器cookie。在此处阅读有关会话的PHP手册:http://php.net/manual/en/book.session.php
关于会话如何工作的快速,简单的解释是您可以在一个页面上执行此操作:
<?
session_start();
$_SESSION['username'] = "foobar";
?>
...然后在另一页上:
<?
session_start();
echo $_SESSION['username'];
?>
...并且第二页将显示“foobar”,无论用户来自哪里(只要他们已经访问过第一页至少一次)。