###前提・実現したいこと
PHP中に埋め込まれたjavaScriptからリダイレクトした場合にlocalStrageに値が保持されない理由を教えてほしい
PHPのソースコード中でcookieの代わりにlocalStorageを使いたいのですが、
localStorageはJSでないと使えないので、苦肉の策として
「PHPの処理にJSの処理をさらに埋め込み、localStorageに値をセットした上で別のPHPの処理にさらにリダイレクトをかける」
で、localStorageの値を保持できるのかなと思ってやってみました。
が、リダイレクト直前にはセットされていたはずの値が、別URLへリダイレクトした瞬間になくなってしまいます。
これって、何故なのでしょうか?
確か、IPやらドメインやら云々が絡んでいた気もするのですが、忘れてしまいました・・・。
プライベートIP(192.168.~)間でリダイレクトさせた際はうまいこと値がsetされていたのですが、何か関係あるのでしょうか。
###該当のソースコード
<?php echo <<<EOM <script type="text/javascript"> localStorage.setItem( 'key' , 'something_value' ); var url = "http://PHPの処理?param=".localStorage.getItem( 'key' ); location.href=url; </script> EOM; ?>
上記の例でいうと、このようなカタチで localStorage.getItem( 'key' )
の値をPHPの処理まで持ってこれれば、Storageの値をPHPでも使えるのかなと思ったしだいです。(が、できませんでした。)
ちなみに、PHPの中にこのようにJSの処理を書かないといけない理由は、URLとしてリンクを踏んだ時に上記記載の一連の処理を行いたいからです。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー