setcookieを実行してもクッキーが保存されない場合に疑うべき点などをまとめてみました
1、第3引数の有効期限が短すぎる
よくありがちなのが「30」とかって指定している場合。
30日のつもりでいたらとんでもない、これだと一瞬で有効期限がきれてしまいます。
PHPのsetcookie()はUnix タイムスタンプでtime()+3600(1時間)のように設定します。
2、第4引数のdomainが違う
本番環境ではdomainに「~~.com」のように指定するのが普通ですが、
開発環境をローカルで構築している場合このdomainに保存しても意味ないですね。
開発環境用のconfigなどを設定して切り分けできるようにしておきましょう。
3、第5引数のsecureの設定が違う
これも本番環境ではHTTPSで通信しているが、開発環境はHTTPというようなケースですね。
同じく切り分けできるようにしておきましょう
普段クライアント側javascript中心のプログラマーででPHPは初心者な人だとクッキーでハマることが多いみたいなので気をつけましょう。
0 件のコメント:
コメントを投稿