PHP会话-在iframe中设置和检索


PHP sessions - setting in iframe and retrieving

我有一个HTML表单,它被发送到PHP页面进行处理。我需要向表单添加一些功能,并需要在HTML表单中设置会话变量。我无法将HTML页面更改为PHP,因此在PHP页面中设置了一个会话,并将其作为Iframe包含到表单中。当页面加载时,设置了会话变量,但我无法在进程PHP页面中检索此会话,会话为空。有人能帮忙吗?

在iframe中设置会话的代码:

error_reporting(E_ALL);
session_start(); // start a session
$code = rand(1000, 9999); //create a random number between 1000 and 9999
$_SESSION['code'] = $code; //add the random number to session 'code'

代码在process.php页面,我需要检索会话:

error_reporting(E_ALL);
session_start();
print_r($_SESSION); 

有人能帮忙吗?

编辑:

我刚刚意识到这在IE中有效,但在firefox或chrome中无效-奇怪。

您需要做一些额外的工作来确保包含会话ID的cookie与iframe共享。请注意,出于安全原因,只有当iframe与容器网站位于同一域时才有可能。