私は緯度と経度のテーブルと関連するデータを持つMySQLデータベースを持っています。私はGoogle Mapを作成しようとしており、JavaScriptを使用してJSON文字列を解析したいと考えています。私はここやYouTubeで見てきました。私が間違っていることを解決する方法はわかりません。ここでJavaScriptを使用したJSON配列の解析
は、私は私のecho文を取得する私のJSON文字列である:ここで
{"cm_mapTABLE":[["1","Angels Rest Photos OR","Angels_Rest_Photos_OR","663","aaj.jpg","2","Angel's Rest","Hike one of the trails in the Gorge with a scenic overlook, stream, and waterfall.","0","blue","4.5","45.5603","-122.171","http:\/\/www.eyehike.com\/pgallery\/index.php?\/category\/6","Angels_Rest_Photos_OR\/aae.thumb.jpg\" ALIGN=left HEIGHT=115 WIDTH=150>","http:\/\/www.eyehike.com\/pgallery\/i.php?\/galleries\/Angels_Rest_Photos_OR\/aaj-th.jpg","","","",""],["2","Ape Canyon Photos WA","Ape_Canyon_Photos_WA","681","PICT0114.jpg","3","Ape Canyon Trail","This trail is popular with hikers and mountain bikers with great views of several mountains.","0","blue","11","46.1653","-122.092","http:\/\/www.eyehike.com\/pgallery\/index.php?\/category\/8","Ape_Canyon_Photos_WA\/PICT0114.thumb.jpg\" ALIGN=left HEIGHT=115 WIDTH=150>","http:\/\/www.eyehike.com\/pgallery\/i.php?\/galleries\/Ape_Canyon_Photos_WA\/PICT0114-th.jpg","","","",""]]}
は私のコードです:
<!DOCTYPE html>
<head>
<?php
require("phpsqlsearch_dbinfo.php"); // This is the file with your logon info
//$host="localhost"; //replace with your hostname
//$username="root"; //replace with your username
//$password=""; //replace with your password
//$db_name="$database"; //replace with your database
$con=mysqli_connect("$hostname", "$username", "$password", "$database")or die("cannot connect");
//mysqli_select_db("$db_name")or die("cannot select DB");
$sql = "select * from location_markers WHERE mrk_id < 3"; //replace emp_info with your table name
$result = mysqli_query($con, $sql);
$json_string_data = array();
if(mysqli_num_rows($result)){
while($row=mysqli_fetch_row($result)){
$json_string_data['cm_mapTABLE'][]=$row;
}
}
mysqli_close($con);
// You have to give the json a name to make it accessible by JS, e.g.:
// echo 'file='.json_encode($json_string_data),';';
// This statement will echo the json output in the displayed web page
echo json_encode($json_string_data);
// please refer to our PHP JSON encode function tutorial for learning json_encode function in detail
?>
</head>
<body>
<script>
for (i = 0;i < $json_string_data.length;i++){
var javascript_string_data=<?php echo json_encode($json_string_data); ?>;
document.write(cm_mapTABLE.rank[i]);
}
</script>
</body>
</html>
私はFirebugのを使用していますし、ここでエラーです:
は、ReferenceError: $json_string_data is not defined
for (i = 0;i < $json_string_data.length;i++){
JSON文字列の要素を参照する正しい方法を教えてください。私は何とかJSON文字列のフィールド名を取得する必要がありますか?
注意:文字列ではなくオブジェクトを使用し、コードが 'JSON.parse'に変更されているため、' str_replace'が編集によって削除されました。 –
ありがとうございました。インターネットでJSON形式の文字列を検索し、JSON出力を貼り付けることができるサイトを見つけました。フォーマットされているので、今後の投稿に使用します。私は今晩JSON解析を使用します。私はGoogleのスプレッドシートに基づいて再び私の古いGoogleマップV2を使用しているので、私はいくつかの呼吸ルームを持っている。 – Steve
私の最終的なコードでは、mysqlデータを取得するために使用しています。 JSONの代わりにXMLを使用した例が見つかりました。 – Steve