データ アクセスに JSON を多用する HTML5 アプリケーションを構築しようとしています。いくつかの例では、(JavaScript と JQuery を使用して) getJSON オブジェクトを使用して、JSON オブジェクトを PHP ページに投稿したいと考えています。次に、その PHP ページは JSON オブジェクトを取得し、いくつかのビジネス ロジックを実行してから、別の JSON オブジェクトを呼び出しページに返します。
呼び出しページに返される有効な JSON オブジェクトを取得できますが、元の要求で渡した JSON オブジェクトを取得できないようです。$_GET、$_POST、およびその他のいくつかのオプションを試しました。すべて役に立たない。
これが元のページの私のコードです。これは非常に単純です。ユーザーがボタンをクリックすると、JSON オブジェクトを receive_jason.php というページに渡す AJAX 呼び出しを実行します。このページは、渡された JSON オブジェクトを評価し、別の JSON オブジェクトを元のページに返すことになっています。
ページ1:
<html lang="en">
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>
</head>
<script type="text/javascript">
function StartPost()
{
var strJSON = '{"id":"3","artist":"The Beatles","alblum":"White Alblum"}';
var jsonURL = "receive_json.php";
$.getJSON( jsonURL,
strJSON,
function(data) {
var items = [];
responseMsg = data["success"];
alert(responseMsg);
});
}
</script>
<body>
<input type="button" name="Post Data" value="Post Data" onClick="StartPost();">
</body>
</html>
そして、これが receive_json.php ページの PHP コードです...
<?php
$incomingData = $_GET['artist'];
$myText =(string) $incomingData;
echo "{\"success\":\"" . strlen($myText) . "\"}";
?>
明確にするために、getJSON 呼び出しは機能し、戻り時に有効な JSON 呼び出しを受け取ります。しかし、渡した JSON オブジェクトにアクセスできません。
私の質問....
1) これは私が修正できる単純な構文エラーですか?
2) getJSON はこのタスクに適した機能ですか?
3) getJSON リクエストを簡単にデバッグして、ページで何が起こっているかを確認する方法はありますか?