Php 第一次加载页面时,firefox上没有会话
我使用一个会话变量来保存一个名为“myage”的变量的值,如下所示Php 第一次加载页面时,firefox上没有会话,php,session,firefox,session-variables,session-cookies,Php,Session,Firefox,Session Variables,Session Cookies,我使用一个会话变量来保存一个名为“myage”的变量的值,如下所示 if(transfer) { $.ajax( { url: '../php/setSession.php', data: { 'link': link, 'myage': myage }, type: 'POST', success: function
if(transfer) {
$.ajax(
{
url: '../php/setSession.php',
data: {
'link': link,
'myage': myage
},
type: 'POST',
success: function(output)
{
console.log("session variables set");
}
}
);
window.location.href = "../transfer/school.html";
}
});
我的setSession.php如下所示
<?php
session_start();
$_SESSION['myage'] = $_POST['myage'];
?>
然而,问题是,在会话的第一次,当我登录到站点时,会话变量没有设置,因此,“myage”在文本框中显示空值,我在其中打印它的值。下一次,它可以正常工作
如何纠正这种行为
编辑:此问题仅在firefox上存在,在其他浏览器上,会话变量从会话中首次使用时开始设置。我猜您希望在成功时重定向
if(transfer) {
$.ajax({
url: '../php/setSession.php',
data: {
'link': link,
'myage': myage
},
type: 'POST',
success: function(output) {
console.log("session variables set");
window.location.href = "../transfer/school.html"; // <-- this line
}
});
}
if(传输){
$.ajax({
url:“../php/setSession.php”,
数据:{
“链接”:链接,
“我的年龄”:我的年龄
},
键入:“POST”,
成功:功能(输出){
log(“会话变量集”);
window.location.href=“../transfer/school.html”;//第一个代码与登录功能有关?如果是,则显示完整代码?@anantkumarsingh,它与登录无关,但myage的值来自服务器,即使是第一次也能正确填充。但是当我将其写入setSession.php中的会话变量,然后从中读取时,我读取的是NULL,而不是实际值e第一次。我还可以提供其他信息吗?很抱歉,这是我第一次进行web开发。在您的第一页中,还写了会话\u start()。@anantkumarsingh,我再次尝试了我的原始代码,结果发现只有在firefox上,会话变量$\u session['myage']当我第一次使用该网站时,没有保存。在chrome上,同样有效。你能建议我如何解决这个问题吗?只是重申一下,第一个代码是一个javascript函数,它将“myage”的值作为帖子发送(该值正确且非零/非空)但是一旦它到达那里,会话变量就不会填充该值(这是我在这个会话期间第一次使用该站点)。