首页  >  文章  >  后端开发  >  一个cookie的有关问题,希望大神们帮小弟我一上,多谢,说一上错在哪里

一个cookie的有关问题,希望大神们帮小弟我一上,多谢,说一上错在哪里

WBOY
WBOY原创
2016-06-13 13:19:28788浏览

一个cookie的问题,希望大神们帮我一下,谢谢,说一下错在哪里?

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><?php if(empty($_COOKIE['lastVisit'])){
        //如果为空为第一次登录
        echo "您好,您是第一次登录!";
        //记录下首次登录时间
        setcookie("lastVisit",date('Y-m-d H:i:s'),time()+30*24*3600);
    }else{
        echo "您上一次访问时间是".$_COOKIE['lastVisit'];
        //更新为这一次登录的时间
        setcookie("lastVisit",date('Y-m-d H:i:s'),time()+30*24*3600);
    }

?>

报错:
您好,您是第一次登录!
Warning: Cannot modify header information - headers already sent by (output started at D:\LAMP\AppServ\www\cookie\lastVisit.php:4) in D:\LAMP\AppServ\www\cookie\lastVisit.php on line 6


------解决方案--------------------
这么改一下代码...另外如果是utf-8 编码文档注意不要有B头

PHP code

$first = FALSE;
if (empty($_COOKIE['lastVisit'])) {
    $first = TRUE;
    setcookie("lastVisit", date('Y-m-d H:i:s'), time() + 30 * 24 * 3600);
} else {
    $first = FALSE;
    setcookie("lastVisit", date('Y-m-d H:i:s'), time() + 30 * 24 * 3600);
}
if ($first) {
    echo "您好,您是第一次登录!";
} else {
    echo "您上一次访问时间是" . $_COOKIE['lastVisit'];
}
<br><font color="#e78608">------解决方案--------------------</font><br>
在header之前有输出导致的,开启缓冲 ob_start(); <div class="clear">
                 
              
              
        
            </div>
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn