PHP的setCookie和getCookie

问题描述:

我正在这个PHP应用程序,我设置一个cookie,然后重定向到另一个寻呼机后,当我设置我的cookie。PHP的setCookie和getCookie

当我到我的新的一页,并尝试访问我的cookie,它告诉我,

if ($num > 0) { 
      $row = mysqli_fetch_array($result, MYSQLI_NUM); 

      setcookie("userid", $row[0]); 
      setcookie("username", $username); 

      header("Location: ../direction/Exist.php"); 
      exit(); 
     } else { 
      setcookie("username", $username); 
      setcookie("password", $pass); 
      header("Location: ../direction/NewMember.php"); 
      exit(); 
     } 
    } 

    mysqli_close(checkConnection()); 
} 

我我NewMember.php页,我访问的cookie与此代码。

$username = $_COOKIE["username"]; 
$password = $_COOKIE["password"]; 

未定义指数:用户名在第5行

这是我试图访问我的饼干就行了。

下面是我如何设置我的cookie的代码。

请任何帮助。

+1

不要将用户密码设置为Cookie。您还需要指定cookie过期日期和可能的路径 - [''setcookie()'](http://php.net/setcookie)。你会更好地使用会话。 – Darren

您的代码表明该cookie是在不同的URL路径中创建和读取的。您需要覆盖cookie可用的路径(第四个参数)。

setcookie("username", $username, 0, "/"); 

setcookie()路径参数文件:

其中的cookie将可在服务器上的路径。如果设置为“/”,则Cookie将在整个域中可用。如果设置为'/ foo /',则cookie将仅在/ foo /目录和所有子目录(如/ foo/bar/of域)中可用。默认值是Cookie正在设置的当前目录。