无法在php中跨页面使用登录会话

时间:2013-04-15 17:40:10

标签: php

我无法将登录会话信息传递给其他HTML页面。下面是我的登录php代码。我可以成功登录,但无法将信息传递给其他页面,如HTML主页,虽然我没有登录到同一个页面但它已打开。我为同样的

尝试了不同的代码
<?php

require_once("config.php");

$email=$_POST['email'];
$password=$_POST['password'];

$email = stripslashes($email);
$password = stripslashes($password);
$email = mysql_real_escape_string(strip_tags($email));
$password = mysql_real_escape_string(strip_tags($password));

// Check occurence of email password combination
$sql="SELECT * FROM register WHERE email='$email'";
$result=mysql_query($sql); 


// Mysql_num_row is counting table row
$count=mysql_num_rows($result);

// If result matched $email, table row must be 1 row
if($count==1)
{
$row = mysql_fetch_array($result);
if($password == $row['password'])
{
session_start();
$_SESSION['login'] = "1";
header("location:home.html");
exit;
}
else 
{
echo "Please enter correct Password";
header("location:login.html");
session_start();
$_SESSION['login'] = '' 
exit();
}
 }  
else
{
header("Location:register.html");
exit();
}

?>


Below is the php snippet that I use at the top of my HTML page:
<?php

require_once("config.php");
session_start();
if (!(isset($_SESSION['login']) && $_SESSION['login'] != '')) {

header ("Location: login.html");

exit;

}
?>

2 个答案:

答案 0 :(得分:1)

将.html文件更改为.php文件。从session_start();开始,因为HTML页面是静态的,PHP是动态的。

在此之后,您将可以使用$_SESSION['login']

答案 1 :(得分:0)

在session_start();登录成功时,只能使用onse。

从我在HTML页面顶部使用的“php片段”中删除该行,一切都应该没问题。

所以你的代码是:

<?php

require_once("config.php");
if (!(isset($_SESSION['login']) && $_SESSION['login'] != '')) {

header ("Location: login.html");

exit;

}
?>