如何为重定向设置php cookie

如何为重定向设置php cookie,php,redirect,cookies,Php,Redirect,Cookies,当人们访问我的站点时,我需要他们单击两个状态之一(NC或VA)。根据单击的状态,它会将它们重定向到我的站点上的相应页面。设置cookie后,我希望他们访问站点,而不是再次询问问题,它已经知道如何将他们发送到他们选择的页面(状态)。我对php知之甚少…足以构成危险,如果您能给我提供任何指导,我将不胜感激。您可以将cookie设置为: setcookie('state', $state, time() + (60 * 60 *24)); 假设$state为“nc”或“va”,这将起作用: if(i

当人们访问我的站点时,我需要他们单击两个状态之一(NC或VA)。根据单击的状态,它会将它们重定向到我的站点上的相应页面。设置cookie后,我希望他们访问站点,而不是再次询问问题,它已经知道如何将他们发送到他们选择的页面(状态)。我对php知之甚少…足以构成危险,如果您能给我提供任何指导,我将不胜感激。

您可以将cookie设置为:

setcookie('state', $state, time() + (60 * 60 *24));
假设
$state
为“nc”或“va”,这将起作用:

if(isset($_COOKIE['state']))
{
    if($_COOKIE['state'] == 'va')
        header('Location: va/index.php');
    else if($_COOKIE['state'] == 'nc')
        header('Location: vnc/index.php');
}
else
{
    // Make them choose again here.
}

您应该看看这个php函数

然后使用位置标头重定向

header( "Location: /" );
在索引页上

<?php

if(isset($_COOKIE['state']))
{
   switch($_COOKIE['state'])
   {
      case "NC":
        header('location: www.url.com/site1/');
      break;

      case "VA":
        header('location: www.url.com/site2/');
      break;
   }

}
else
{
   //Display site options
}

?>

在各个网站(如www.url.com/site1/)上:



谢谢。但是cookie的代码如何知道它们选择了哪个状态?我想这就是我困惑的地方 北卡罗来纳州弗吉尼亚州


您需要更改每个复选框的值,以表示所需的值。然后您可以通过$u POST数组访问它。谢谢您的帮助。今天下午我要做这件事,我们来看看进展如何!非常感谢。如果我有两个复选框,它们提交它们的状态,那么我的表单和cookie是如何协同工作的 北卡罗来纳州弗吉尼亚州

<?php

if(isset($_COOKIE['state']))
{
   switch($_COOKIE['state'])
   {
      case "NC":
        header('location: www.url.com/site1/');
      break;

      case "VA":
        header('location: www.url.com/site2/');
      break;
   }

}
else
{
   //Display site options
}

?>
<?php
if(!isset($_COOKIE['state']))
{
  setcookie('state', "NC" ,time() + (86400 * 7)); //valid for 7 days
}
?>