如何在PHP中将cookie从一个页面移动到另一个页面?

时间:2014-08-07 16:28:53

标签: php cookies

我正在处理一个使用cookie登录用户的PHP站点;问题是我无法从登录页面获取输入电子邮件到主页。

我总是在主页上看到这个:

  

(欢迎电子邮件!)

应该是:

  

(欢迎use​​r@gmail.com!)

这是我的主页代码:

<?php
 if (isset($_COOKIE["Email"])){

  echo "Welcome " . $_COOKIE["Email"]. "!<br>";
  echo '<a href="logoutForm.php">logout</a>';  
}
else{
setcookie("Email", "Email", time()-50000);
echo 'you are logged out please <a href="log_in.php">login</a>'; 
}
?>

2 个答案:

答案 0 :(得分:1)

您是否尝试过使用会话?

成功登录后,重定向:

session_start();
$_SESSION['Email']="user@gmail.com";

然后在您的欢迎页面上:

<?php

 session_start();

 if(isset($_SESSION["Email"])){
    echo "Welcome " . $_SESSION["Email"]. "!<br>";
    echo '<a href="logoutForm.php">logout</a>';  
 }
 else{
    setcookie("Email", "Email", time()-50000);
    echo 'you are logged out please <a href="log_in.php">login</a>'; 
 }

?>

这还有将会话信息存储在服务器上而不是用户计算机上的好处。

要终止会话,请使用:

session_destroy();

答案 1 :(得分:1)

您需要在登录页面上向我们展示代码,以便我们了解您如何设置&#34;电子邮件&#34; cookie变量,就像你使用

一样
    setcookie("Email", "bla_blah_blah");