我试图通过会话将页面(表单的值)中的变量传递给php页面。 在我之间有一个iframe,在表单发送后打开另一个html页面并向php页面发出ajax请求,但它总是失败并给我这个:
注意:未定义的索引:Flightnumber1
注意:未定义的索引:Datetime1
会话不起作用。 如果我没有发出ajax请求并且只是将我的php文件的php代码放在我的iframe-html-page中,那么会话就可以了,但我真的需要它成为一个ajax请求。
我尝试按照stackoverflow上的建议将标题更改为:
header('P3P: CP="CAO PSA OUR"');
我还检查了我的测试浏览器中是否允许使用第三方cookie,即使我没有看到它的含义,因为它不是cookie而是会话,但这里也有建议。
我甚至尝试将带有会话的变量传递给iframe页面,然后从中创建一个新变量并将其传递给php页面,但仍然没有正面结果。
这是第一页:
<?php
session_start();
if (isset($_POST['Submit'])) {
$_SESSION['Flightnumber1'] = $_POST['Flightnumber1'];
$_SESSION['Datetime1'] = $_POST['Datetime1'];
}
?>
<form target="iframe" method="post" action="iframe.html">
<input id="Flightnumber1" name="Flightnumber1" type="text" />
<input id="Datetime1" name="Datetime1" type="text"/>
<input id="Submit-Prufbox" name="Submit" type="submit" onclick='document.getElementById("iframe").src="iframe.html"; $("#iframe").show();' />
</form>
<iframe id="iframe" name="iframe" style="display: none;"></iframe>
这是在提交表单后在iframe中打开的页面: 的 Iframe.html的
<?php
session_start();
?>
<script>
$( "#result" ).load( "AjaxRequestPage.php" );
</script>
这是ajax请求的页面: 的 AjaxRequestPage.php
session_start();
$regValue = $_POST['Flightnumber1'];
$regValue2 = $_POST['Datetime1'];
phpcode;
phpcode;
phpcode;
答案 0 :(得分:0)
在AjaxRequestPage.php中,您需要通过$ _SESSION
调用变量session_start();
$regValue = $_SESSION['Flightnumber1'];
$regValue2 = $_SESSION['Datetime1'];