1

当人们访问我的网站时,我希望那些已经访问过我的网站并提交电子邮件的人绕过我的电子邮件提交页面,直接进入我的销售页面。

我有一个 index.php 如下:-

<!DOCTYPE html>

<?php
if (isset($_COOKIE["user"]))
{
  header("location: salespage.php");
exit;
}
else
{
  header("location: emailsubmit.php");
}
?>

<html>
<body>
<h1>My first PHP page</h1>
</body>
</html> 

因此,如果没有 cookie,他们是新用户并且没有提交他们的电子邮件,所以他们重定向到“emailsubmit.php”他们然后输入他们的电子邮件地址并单击提交以进入欢迎页面“welcome.php”

Welcome.php 如下:-

<!DOCTYPE html>

<?php
$expire=time()+60*60*24*30;
setcookie("user", "true", $expire);
?>

<html>
<body>
<h1>welcome, email submitted.</h1>
</body>
</html> 

所以这个欢迎页面设置了一个持续 30 天的 cookie。

现在,当他们重新访问我的网站时,不再看到电子邮件提交表单,而是 index.php 将他们直接重定向到 salespage.php。

我在那里得到了一切吗?

它似乎有效,但我想问专家它是否绝对正确。

我需要再“退出”吗?在第二个标题之后(“位置术语?

另外,我可以删除这些东西,只需将 index.php 文件作为 php 代码:-

<?php
if (isset($_COOKIE["user"]))
{
  header("location: salespage.php");
exit;
}
else
{
  header("location: emailsubmit.php");
}
?>

非常感谢

4

1 回答 1

0

为什么要在 if 条件下退出?你有任何重定向的方式,所以我想这不是必需的

另外,如果客户在一个月后来,您为什么还要再次要求电子邮件。如果他清除他的 cookie 怎么办?系统将再次提示他输入电子邮件。

我建议您存储他的电子邮件并从数据库本身而不是 cookie 中检查,如果电子邮件存在,然后相应地重定向他。

希望它可以帮助你。

于 2013-07-06T15:39:08.273 回答