###前提・実現したいこと
webアプリケーションを作成しており、その中で、
・前ページでJSON.stringify()で文字列化しlocalstorageに保存したJSONデータ を
・本ページでlocalstorageから取り出しJSONデータとしてPHPで扱いDBに格納する
という機能を実装したいと考えております。
なお後述の通り前ページで隠しフォームを使ったやり方で実装することが出来ましたので、後学のためにこの方法がなぜいけなかったのかご教授ください。
よろしくおねがい致します。
###発生している問題
本ページで、JSONデータを変換した文字列はjavascriptを通して取得出来ているものの、この文字列をjson_decode(文字列,true) → 配列中から取り出したい値をecho しても何も帰ってこない。
###該当のソースコード
php
1<?php 2 3$script = '<script> 4 document.write(window.localStorage.getItem("key_hoge")); 5</script>'; 6echo $script; //取得したいJSONデータ文字列が表示される 7 8 9$list = json_decode( $script , true ) ; 10echo $list[0][hogehoge]; //なにも表示されない。 11echo $list; //同上 12 13 ?>
###試したこと
①localStorageにkey「key_hoge」で格納されている文字列(echo $script; で呼び出される文字列)をそのままソースにコピペして$script に代入したところ、しっかりjson_decodeされ値を取り出すことが出来た。
そのためJSON生成→変換→格納には問題がないと思われます。
②前ページで隠しフォームのvalueに文字列を入れPOSTする方法では実装することが出来た。
以上よろしくお願いいたします。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/01/25 12:04