php $ _SESSION不起作用

时间:2015-07-10 01:23:54

标签: php session

我正在尝试将会话用于学习目的,但它不起作用。我有一个登录页面,通过POST“uname”和“passw”传递到这个页面:

<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>
<html>
<?php session_start(); ?>
<head>
...
if($_POST['uname']=="admin" && $_POST['passw']=="correctpassword"){
$_SESSION['login']="ok";}    
if($_SESSION['login']=="ok"){
echo "<p>Logged in</p>";
} else {
echo "<p>Nothing</p>";
}
...
</html>

直到这里才有效。然后当我传递另一页时:

<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN”>
<html>
<?php session_start(); ?>
<head>
...
if($_SESSION['login']=="ok"){
echo "<p>Logged in</p>";
} else {
echo "<p>Nothing</p>";
...
</html>

这里不起作用。

我正在研究MAMP和Safari。

有人能帮助我吗?

1 个答案:

答案 0 :(得分:0)

在{/ p>之前将<?php session_start(); ?>放在页面顶部,没有任何空格

  

注意:   要使用基于cookie的会话,必须在向浏览器输出任何内容之前调用session_start()。