5

そのため、適切に設定されていることがわかっているCookieがあり(firefoxを使用してページ情報を取得)、エラー/警告「通知:未定義のインデックス:」が表示され続けます。を使用して Cookie にアクセスして$_COOKIE['username'];いますがif(isset($_COOKIE['username']))、コードが実行されません。ただし、firefox get page info で有効期限が切れていない Cookie を確認できます。参考までに、ここに私のセットのCookieコードがあります:setcookie('username', $username, time()+3600*24);

4

2 に答える 2

6

issetを呼び出していたphpファイルの別のフォルダーにあるphpファイルでCookieを定義していた可能性があります。

そのため、Cookie のデフォルト フォルダーとして「/」を追加すると、Web サイト全体で利用できるようになります。

場合によっては、これが発生したくない場合があります。これは、名前が同じで、現在のフォルダーに応じて値が異なる 2 つの Cookie が必要になる場合があるためです。

例: 2 つの言語を使用する Web サイトで$_COOKIE['language'] = 'en';/en/フォルダー内にあるものとフォルダー内にあるもの$_COOKIE['language'] = 'fr';があり/fr/ます。

そのため、ディレクトリを指定せずに Cookie を設定する場合は、同じフォルダーまたはサブフォルダー内のファイルに対してのみ使用できることを覚えておく必要があります。

于 2012-08-07T07:57:49.897 に答える
1
$expire = time()+60*60*24*30;          
setcookie("MyName", "Khan", $expire,'/');
于 2014-08-22T19:51:11.023 に答える