0

这是整个注销文件的代码。当我单击菜单上的注销链接时,它在 FF 或 IE 中什么也不做……只是刷新页面。

<?php

  if (isset($_COOKIE['id'])) {

      setcookie('id', '', time() - 3600);
      setcookie('username', '', time() - 3600);
  }

  // Redirect to the home page
  $home_url = 'http://' . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . '/index.php';
  header('Location: ' . $home_url);
?>
4

1 回答 1

0

试试这个,看看你真正的结局。

<?php

  if (isset($_COOKIE['id'])) {

      setcookie('id', 'bluefish', time() - 3600);
      setcookie('username', 'joe', time() - 3600);
      $home_url = 'http://' . $_SERVER['HTTP_HOST'] 
                . dirname($_SERVER['PHP_SELF']) . '/cookie_was_set.php'; 

  } else {

      setcookie('id', 'deadfish', time() + 3600);
      setcookie('username', 'joe', time() + 3600);
      $home_url = 'http://' . $_SERVER['HTTP_HOST'] 
                . dirname($_SERVER['PHP_SELF']) . '/index.php';

  }

  // Redirect to the home page
  header('Location: ' . $home_url);
?>

如果你总是登陆 index.php,这意味着页面试图设置 cookie 但没有成功。因此,您的浏览器不允许您设置 cookie。否则,它将向后设置 cookie 时间,并将您弹回丢失的页面。

于 2013-04-19T02:26:27.937 回答