【发布时间】:2015-07-19 23:17:54
【问题描述】:
我正在使用会话变量来保存名为“myage”的变量的值,如下所示
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”在我的文本框中显示空值“我打印出它的价值。下次继续,它工作正常。
如何纠正这种行为?
编辑:这个问题只出现在火狐上,在其他浏览器上,SESSION 变量从会话中的第一次使用开始设置。
【问题讨论】:
-
第一个代码与登录功能有关?如果是,显示完整代码?
-
@anantkumarsingh ,它与登录无关,但 myage 的值来自服务器,即使是第一次也能正确填充。但是当我将它写入 setSession.php 中的会话变量然后从中读取时,我第一次读取的是 NULL 而不是实际值。有没有其他信息我可以提供,对不起我第一次做网络开发。
-
在你的第一页也写 session_start()。
-
@anantkumarsingh ,我再次尝试了我的原始代码,结果发现只有在 Firefox 上,会话变量 $_SESSION['myage'] 在我第一次使用该站点时没有得到保存。在铬上,同样的作品。你能建议我如何解决这个问题。重申一下,第一个代码是一个 javascript 函数,它将“myage”的值作为一个帖子(这个值是正确的并且非零/非空)发送到 setSession.php。但是一旦到达那里,会话变量就不会填充值(在此会话期间我第一次使用该站点时)。
标签: php session firefox session-variables session-cookies