やりたいこと
下記のようなディレクトリ構成でmain.php
で定義したクッキーをsub.php
で使いたい
ディレクトリ構成
$ pwd /Users/User_Name/Desktop/cookie_test $ tree . ├── cookie_main │ └── main.php └── cookie_sub └── sub.php
main.php
上記のようなディレクトリにおいてmain.php
で下記(setcookie("cookie[three]", "cookiethree", time()+3600, "/../cookie_test");
)のようにクッキーを作りました
<?php echo "this page is main.php"; echo nl2br("\n"); // クッキーを設定します setcookie("cookie[three]", "cookiethree", time()+3600, "/../cookie_test"); setcookie("cookie[two]", "cookietwo", time()+3600, "/../cookie_test"); setcookie("cookie[one]", "cookieone", time()+3600, "/../cookie_test"); // ページを再読み込みした後に、表示します if (isset($_COOKIE['cookie'])) { foreach ($_COOKIE['cookie'] as $name => $value) { $name = htmlspecialchars($name); $value = htmlspecialchars($value); echo "$name : $value <br />\n"; } } //three : cookiethree //two : cookietwo //one : cookieone ?>
sub.phpでクッキーが動かない
上記のように設定すればcookie_testディレクトリ全体でクッキーが使えるようになると思ったのですが、sub.phpではクッキーが読み込まれません。
<?php echo "this page is sub.php"; echo nl2br("\n"); if (isset($_COOKIE['cookie'])) { foreach ($_COOKIE['cookie'] as $name => $value) { $name = htmlspecialchars($name); $value = htmlspecialchars($value); echo "$name : $value <br />\n"; } }else{ echo "クッキーは存在しない"; } ?>
試したこと
上記のようにパスを工夫したのと、ドメイン全体でクッキーを使え右葉に試しもしました。自分は現在awsのlightsailを使っており、httpsもドメインも取得しておらず、そのためか、ドメイン全体での制御も出来ませんでした。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/01/29 10:02 編集
2018/01/29 12:49
2019/03/10 02:32