2011-12-02 48 views
1

我有一个着陆页,我希望观众在第一次到达//domain.com时看到。然后,如果他们访问过该网站,浏览器会自动跳过登录页面并直接将其带到//domain.com/main.html使用Cookie跳过着陆页

这样做的最佳方法是什么?

+1

你刚才描述的解决方案:设置cookie,如果cookie存在,重定向到主页面。你在实现它时有一个特定的问题吗? – JJJ

回答

2

如果我是你,我真的重新定向,如果他们没有看到页面的第一次。它创建了一个更直观的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>'); 
+1

+1用于重定向例外情况。 –

+0

感谢您对重新指导的提示!确定要走的路 – RonnieT

2

是这样的吗?

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