我有这个问题。当我使用$ _POST时,Session不起作用。如果我添加63 manualy它将跨页面。我可以看到输出63。
$_SESSION['name'] = 63;
echo $_SESSION['name'] ;
但是当我在页面之间切换时,下面这个不起作用。 $ row ['id']输出也是63。
$cari = "SELECT id FROM dns_soa WHERE `origin` = '".$_POST['origin']."'";
$keputusan = mysql_query($cari);
$row = mysql_fetch_array($keputusan);
$_SESSION['name'] = $row['id'];
echo $_SESSION['name'] ;
当我进入第2页时,我可以看到输出,但当我回到第1页时输出消失了。有什么想法吗?
答案 0 :(得分:1)
因为当你回来时它会再次设置会话变量,因为这次你没有导致$ row ['id'] =“”的$ _POST [origin]变量,而且会话变量也是NULL ...
你应该做的是......
$cari = "SELECT id FROM dns_soa WHERE `origin` = '".$_POST['origin']."'";
$keputusan = mysql_query($cari);
$row = mysql_fetch_array($keputusan);
if(!isset($_SESSION['name']))
$_SESSION['name'] = $row['id'];
echo $_SESSION['name'] ;
答案 1 :(得分:1)
当您返回到您已使用$_POST
的网页时,$_POST
将变为空,除非您的浏览器再次发布。因此SQL查询不返回任何结果。因此,$_SESSION['name']
变为空。
另外,请确保在使用session_start
$_SESSION