会话和iframe的问题


Problems with Sessions and Iframes

下午好!

我有一个网站,允许您登录并使用第三方应用程序通过Iframe。一旦他们完成了他们的应用程序,然而,它重定向到我们的网站在iframe内,只有当用户重定向到我们的网站从iframe,他们不登录在iframe内。将会话从主机传输到Iframe的最佳方式是什么?

到目前为止,我已经在iframe内www.test.com?sid=34324vcsd3,我相信这工作得很好。然而,每当他们直接,他们重定向到www.mysite.com/page,目前没有通过Iframe登录。即使我通过主机页面登录,我也没有通过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 ?

或者推荐一个更好的解决方案,如果你知道的话——我对这个很陌生,但是花了一天多的时间试图弄清楚。任何帮助都将非常感激。

据我所知,您试图通过GET变量传递会话信息,而不是使用浏览器cookie。阅读PHP手册的会话在这里:http://php.net/manual/en/book.session.php

快速、简单地解释会话是如何工作的,你可以在一个页面上完成:

<?
session_start();
$_SESSION['username'] = "foobar";
?>

…然后在另一页:

<?
session_start();
echo $_SESSION['username'];
?>

…第二页将显示"foobar",无论用户来自哪里(只要他们已经访问过第一页至少一次)。