0

こんにちは、地理位置情報データを含むオブジェクトの配列を jquery から php スクリプトに渡して、データベースに保存しようとしています。これを機能させるために一晩中起きていたので、睡眠不足から小さな何かが欠けている可能性があります.

jqueryオブジェクトの構造は次のとおりです

var testData = [];            

        var coords = {
        lat: 12.6544885,
        lng: 23.545665
        };

        var pos = {
         timestamp: 1222355465,
          latlng: coords
            };

            testData.push(pos);


            var coords = {
        lat: 55.6544885,
        lng: 55.545665
        };

        var pos = {
         timestamp: 555,
          latlng: coords
            };

            testData.push(pos);

次を使用して.ajax経由でこれを投稿しようとしています

$.ajax({
            type: 'POST',
            data: JSON.stringify(testData),
            //change the url for your project
            url: 'www.mydomain.com/save2.php',
            success: function(data){
                console.log(data);
                alert('Sucess');
            },
            error: function(){
                console.log(data);
                alert('Error');
            }
        });

私はphp側でデコードし、以下を使用してデータベースに配置しようとしています。

$myData = json_decode($_REQUEST['testData']);

$sql = "INSERT INTO walk (timestamp, latitude, longitude) ";
$sql .= "VALUES ($myData->timestamp, $myData->latlng->lat, $myData->latlng->lng)";

この問題に関するご意見をお寄せいただきありがとうございます。

4

1 に答える 1

3

ajaxオプションで、に変更data: JSON.stringify(testData),してみてください

data: { 'testData': JSON.stringify(testData) },

そうしないと、有効なクエリ文字列が得られません。

于 2013-04-13T14:36:36.343 に答える