ホームページ  >  記事  >  バックエンド開発  >  Cookie に関連した問題が発生しました。専門家が解決してくれることを願っています。どこが間違っていたのか教えてください。

Cookie に関連した問題が発生しました。専門家が解決してくれることを願っています。どこが間違っていたのか教えてください。

WBOY
WBOYオリジナル
2016-06-13 13:19:28788ブラウズ

Cookie に問題があります。専門家に教えていただけますか。

PHP コード
<!--

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);
    }

?>

エラー レポート:
こんにちは、初めてログインします。
警告: ヘッダー情報は変更できません - ヘッダーは、D:LAMPAppServwwwcookielastVisit.php の 6 行目で (D:LAMPAppServwwwcookielastVisit.php:4 で開始された出力) によって既に送信されています


--- ---解決策-------------------
コードを次のように変更します... また、utf-8 エンコーディングのドキュメントの場合は、B ヘッダー

PHP コード
 がないように注意してください。

$first = FALSE;
if (empty($_COOKIE['lastVisit'])) {
    $first = TRUE;
    setcookie("lastVisit", date('Y-m-d H:i:s'), time() + 30 * 24 * 3600);
} それ以外 {
    $first = FALSE;
    setcookie("lastVisit", date('Y-m-d H:i:s'), time() + 30 * 24 * 3600);
}
if ($first) {
    echo "こんにちは、初めてログインします!";
} それ以外 {
    echo "最後の訪問時刻は次のとおりです" . $_COOKIE['lastVisit'];
}
<br><font color="#e78608">------解決策------------------</font><br>
ヘッダーの前の出力が原因で、バッファリングを有効にします <div class="clear"></div>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。