【问题标题】:Cookie Based Menu Selections基于 Cookie 的菜单选择
【发布时间】:2011-03-31 12:59:38
【问题描述】:

我是 PHP 新手,想知道如何设置和使用 Cookie 来存储页面之间的用户菜单选择。

基本上,当用户说单击名为“关于我们”的菜单选项时,我想通过 cookie 以某种方式存储此选择,然后我可以在其他地方使用?

仅供参考,我正在使用 jquery .click 函数来确定选择了哪个菜单选项,即

        $("ul.sf-menu li a").click(function() {
        var menu_opt = $(this).attr("href");
    });

谢谢。

【问题讨论】:

    标签: php cookies session-cookies


    【解决方案1】:

    首先你需要setcookie

    <?php
    $value = 'something from somewhere';
    
    setcookie("TestCookie", $value);
    setcookie("TestCookie", $value, time()+3600);  /* expire in 1 hour */
    setcookie("TestCookie", $value, time()+3600, "/~rasmus/", ".example.com", 1);
    ?>
    

    然后您需要使用以下方法检索它:

       echo $_COOKIE['TestCookie'];
    

    根据cookie设置类:

    <a href="about"  <?php if($_COOKIE['TestCookie'] === "About"){ echo "class='selected'";}?>>About page</a>
    

    这里的想法是检查我们的 cookie 的值,如果它是我们想要的,然后 weecho 类分配。有很多更好的方法可以在不使用 cookie 的情况下实现您想要的。

    如果这不是您想要的,您将不得不更好地改写该问题,因为我正在猜测。

    【讨论】:

    • 感谢 Iznogood,但请您协助我如何传递“this”值,以便我可以在新选择的菜单选项上设置正确的类。
    • 感谢您的更新。我不确定该怎么做是根据我所做的菜单选择设置 cookie - 请参阅上面关于 jQuery .click() 调用的更新问题。如何在 jQuery 中将 php $value 设置为上面的 javascript menu_opt 值?
    • 您好,除了我之前的评论,如果没有 cookie,我还有什么其他方法可以实现这一目标?
    • @tonsils 在不知道您的代码是如何设置的情况下很难说。接受此答案并发布有关此主题的另一个问题。你会得到帮助,不会在这里把这个问题弄得一团糟。
    • 会的。请您协助我的最后第二条评论。谢谢
    猜你喜欢
    • 2012-10-27
    • 2018-12-04
    • 1970-01-01
    • 2013-04-20
    • 1970-01-01
    • 2011-12-13
    • 1970-01-01
    • 2011-11-23
    • 1970-01-01
    相关资源
    最近更新 更多