【问题标题】:Use cookie to skip landing page使用 cookie 跳过登陆页面
【发布时间】:2012-01-11 20:16:19
【问题描述】:

我有一个登陆页面,我希望观众在第一次到达 //domain.com 时看到它。然后,如果他们在浏览器之前已经到过该站点,则会自动跳过登陆页面并直接将他们带到 //domain.com/main.html

最好的方法是什么?

【问题讨论】:

  • 你刚才描述的解决方案:设置一个cookie,如果cookie存在,则重定向到主页面。您在实施过程中有什么具体问题吗?

标签: php html cookies session-cookies


【解决方案1】:

如果我是你,如果他们没有第一次看到该页面,我实际上会重定向。它会创建一个更直观的 URL。

无论哪种方式,严格来说,您希望在该人第一次访问该站点时使用setcookie,然后在返回时测试$_COOKIE中是否存在该值。实际上,您可能想要:

  1. 如果 cookie 不存在则重定向
  2. 登陆页面上的链接会将他们重定向到设置 cookie 的页面。
  3. 设置 cookie 的页面会将它们重定向到实际的主页。

为什么要在用户点击链接后设置值?好吧,这样您就可以强制他们在继续之前实际查看页面,我认为这正是您想要的。

您的重定向可能如下所示:

if( !isset( $_COOKIE[ 'seen_landing_page' ] ) )
{
    header( 'Location: <other page>' );
    die();
}
// do whatever else here.

然后你可以有一个简单的传递页面:

setcookie('seen_landing_page',TRUE);
header( 'Location: <your main page>' );

【讨论】:

  • 感谢重定向的提示!确定要走的路
【解决方案2】:

这样的?

// index.php
if ( !isset($_COOKIE["been_here"]))
      setcookie("been_here",true);
else
      header("Location: main.html");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-06
    • 2011-02-03
    • 1970-01-01
    相关资源
    最近更新 更多