IE10,Iframe和PHP SESSION var

时间:2012-10-29 17:13:29

标签: php iframe session-variables internet-explorer-10

我在网页上有一个带有验证码的表单,这个验证码正在使用(如我所知的所有capcha)SESSION变量来存储值。 此表格适用于IE7-8和9,也适用于FF,Chrome,Safari等,但 IE10 我遇到了问题。 如果在IE10的网页上直接调用此表单,则验证码代码运行良好,但如果从另一个网站的 IFRAME 调用此表单,则不会存储SESSION变量。在这种情况下无法使用SESSION变量。

有什么想法吗?

3 个答案:

答案 0 :(得分:0)

iframe受其内容的原始网站的约束。由于您从其他某个站点加载验证码/表单,因此该框架中设置的任何cookie都会锁定到该其他站点。

e.g。您的网站是example.com。 iframe来自foobar.net。 iframe中设置的任何Cookie仅限于foobar.net,并且不会在example.com中提供。

答案 1 :(得分:0)

首先,您会混淆会话和Cookie。会话存储在服务器上,客户端上的cookie。如果你有一个会话,你会想要一个标识你的会话的cookie。所以你真的在谈论饼干。

您不能从其他域获取Cookie。它违反了同源政策。

如果您控制两个域,则可以设置资源共享(CORS跨源 - 资源共享),但这并不容易。

答案 2 :(得分:0)

这是IE10中的已知错误。请参阅bug report