4

同じドメインの他のページに設定したCookieにアクセスしようとしていますが、機能しません。私がやっているときecho $_COOKIE、配列は新しいページでは空ですが、作成ページにはCookieが含まれています。

これが/PROC/LOGIN.PROC.PHPのコードです

//Set the cookie for 1 year.
setcookie("username", $username, time()+365*24*60*60);
setcookie("password", $password, time()+365*24*60*60); 

/INC/HEADER.INC.PHPのコードは次のとおりです

if (isset($_COOKIE['username']) && isset($_COOKIE['password'])) {
include("pages/user.header.pages.php");

しかし、Cookieを設定しようとしたり、header.inc.phpに配列のみを表示したりしようとすると、配列は空になります。

4

2 に答える 2

13

ドキュメントに従ってpath、Cookieの値をドメインのルートに設定する必要があります。

setcookie("username", $username, time()+365*24*60*60, '/');

それ以外の場合は、現在の作業ディレクトリに設定さ/PROC/れます。これは例です。したがって、のスクリプトのみ/PROC/がそのCookieを使用できます。

于 2012-10-01T17:19:31.907 に答える
0

HEADを宣言する前に、PHPのsetcookie定義が行われていることを確認してください。そうでない場合、Cookieは保存されません。

したがって、ヘッダーやその他のHTMLエンティティを送信する前に、コードの先頭でCookieを制御してください。

于 2018-10-29T15:17:47.203 に答える