ここでは何をしましたか?PHPやJavascriptでJSON形式の文字列を修正するにはどうすればいいですか?
javascriptからlocalStorageを取得し、JSON.stringifyします。
document.getElementById("data").value = JSON.stringify(window.localStorage);
は、その後、私はPHPにこのデータを送信し、json_encodeを使用してMySQLに保存します。 コメントに従ってjson_encodeを削除しました。
$data = $_POST["data"];
//Save to database
私は戻って、データベースからデータを取得しようとすると、それは以下のように壊れていると私はjavascriptやPHPを使用して解析することはできません。
"{"UserData10-1":"{\"Ydosiaas\":\"NA\",\"Mpdioasp\":\"NA\"}","UserData1011-1":"{\"Mpdioasp\":\"NA\",\"Ydosiaas\":\"NA\"}","UserData1011-1":"{\"Pdsaousa\":\"NA\",\"Ydosiaas\":\"NA\"}"
誰でも私が間違ったことを理解するのに役立つことができますか?
ありがとうございます。私が把握
EDIT
ことの一つは、私はそれをデータベースに保存する前に、最初の場所でJSONを解析しようとすると、それが働いている、です。 しかし、データベースから再度取得しようとすると、解析にエラーが発生しました。 コードは次のようになります。あなたのデータはローカルで有効なJSONオブジェクトとして格納されている場合でも、まだ:(
{"UserData882-1":""{\"Ydosiaas\":\"NA\",\"Mpdioasp\":\"Normal, position\"}"","UserData7-2":""{\"Mpdioasp\":\"NA\",\"Ydosiaas\":\"Normal, eq\"}"","UserData7-2":""{\"Tweqas\":\"NA\",\"Ydosiaas\":\"Normal, equ\"}""}
を挿入防ぐために
json_encode($response,JSON_UNESCAPED_SLASHES);
を使用することができ、それは '\'とエスケープ特殊文字を含む有効なJSON文字列です。 –しかし、解析すると、 "3番のJSONの予期しないトークンU Object.parse(native)()"というエラーが表示されます。 –
エラーは引用符です。内部引用符は、攪拌を囲む引用符と異なる必要があります。例えば、 '' {"UserData10-1": "..."} ''。また、JSON twicelに変換しているようです。かつてこの問題を引き起こしている可能性のあるPHPでjavascriptを使っていました。 –