PHPはCookieを読み取れません

WBOY
WBOYオリジナル
2016-06-23 14:27:26931ブラウズ

ユーザー名を自動的に記憶する機能を備えたログインインターフェースを作成する

if(empty($_POST['chkRemember'])) {
using using -- )){


いつユーザーがラジオ ボタンを選択してユーザー名を記憶すると、COOKIE が保存され、C:UsersAdministratorAppDataRoamingMicrosoftWindowsCookies メニューの下にその内容を含む追加の COOKIE ファイル (administrator@localhost[1].txt) が存在します。これも正しいです

しかし、COOKIE の読み取りは失敗し、毎回制御が返されます


function GetCookieVal($key){
if(empty($_COOKIE[$key])){
return "none" }else{
return $ _COOKIE[$key];
}
}
?>

COOKIE 配列 print_r($_COOKIE);
結果も空の配列になります


何が起こっているのか教えてください。
COOKIE の保存パスと読み取りパスが一致していませんか?




ディスカッションに返信(解決策)

毎回 null 値を返すはずですが、タイプミスをしました。

1.

setcookie('username',$username,time()+7*24*3600);

GetCookieVal("username")

は異なる HTTP セッションで実行する必要があります

2. Cookieを設定するときに指定したパスです

したがって、Cookieはsetcookieを実行するプログラムのパスでのみ有効です
GetCookieValを実行するプログラムが同じパスにない場合、値は取得されません

setcookie('username', $username,time( )+7*24*3600, '/');
このようにして、Cookie 変数のユーザー名を Web サイト全体で有効にすることができます

ヒーローの皆さん、私は救われました!

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。