私は、phpからのクエリの結果をjavascriptオブジェクトに取得しようとしています。だからコンソールに私はエラーメッセージが表示されますUncaught SyntaxError:予期しないトークンはJSONの位置66にあります。変数が文字列のときにjsonを読み込もうとしているため、これがわかります。だから私のジレンマをheres。以下にGeoJSONオブジェクト(緯度と経度)を含有thestartgeomと呼ばれるテキスト列のクエリ結果は、次のとおりJavascriptでjsonとして文字列を出力するには?
{"type":"Point","coordinates":[40.752067565918,-73.9678421020508]}
{"type":"Point","coordinates":[40.6908912658691,-73.9961242675781]}
{"type":"Point","coordinates":[40.7666969299316,-73.9906158447266]}
データベースとI 100,000を超えるレコードがあるため、テキスト列があるように私はそれを保存する理由個別の行のみを選択しようとしています。私はこれがテキストの列であることを知っているが、私は行ごとに行を行くことができ、緯度と経度(40.342、-73.221)を出力することができますので、私はjavascriptでjsonオブジェクトとしてそれを読んでみたい。私は私の質問でいずれかを怒らせるなら、私を許してください。しかし、これは本当に私を迷惑にしており、私は最後の手段です。
私の究極の目標は、JavaScriptのオブジェクトの座標のみを出力することです。
以下は私のコードです。どんな助けでも大歓迎です。
私のPHPファイル:
<?php
$connect = pg_connect("host=127.0.0.1 dbname=d106 user=b16 password=cccC") or die("Could not connect: ");
$result = pg_query($connect,"SELECT distinct thestartgeom FROM bike");
if (!$result)
{
echo "no results ";
}
while($row = pg_fetch_array($result))
$coor = $row['thestartgeom'];
echo $coor;
}
pg_close($connect);
?>
私のHTML/JS:
<html>
<head>
<title>Simple</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script>
$.ajax({
type: "GET",
dataType: "JSON",
url: "getstat.php",
data: {sataVariable: "here is some data send with GET method"},
success: function(data) {
var r = data.responseText;
var j = JSON.parse(r);
var coords = j.coordinates;
document.writeln(coords); // attempting to take the coordinates and store it in a variable
for (i = 0; i < coords.length; i++) {
coords.forEach(function(entry){
// loop through the coordinates and output the lat,lng
var d = document.getElementById("fpcoords");
d.innerHTML = d.innerHTML + "<br>" + "LatLng(" + entry[0] + "," + entry[1] + "));"
});
}
}
});
</script>
</head>
<body>
</body>
</html>
あなたは出力として三つの異なるJSON文字列を持っており、それはJSONレスポンスに対して有効ではありません。有効なJSONになるには、配列の内部にある必要があります。 – Justinas
分かりやすいコードの字下げが良い考えです。コードを読むのに役立ちます。もっと重要なのは**あなたのコードをデバッグするのに役立ちます** [コーディング標準を見てください](http://www.php-fig.org/psr/psr-2/ )あなた自身の利益のために。あなたはこのコード を数週間/数ヶ月で修正するように頼まれるかもしれません。そして、あなたは私に最後に感謝します。 – RiggsFolly
そして、私は@ RiggsFollyのためにありがとう –