관련 데이터가있는 위도와 경도 테이블이있는 MySQL 데이터베이스가 있습니다. Google Map을 만들고 JavaScript를 사용하여 JSON 문자열을 구문 분석하려고합니다. 나는 여기와 YouTube에서 보았고, 내가 잘못하고있는 것을 해결하는 방법을 모른다. 여기 JavaScript로 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>
오류된다
다음 내가 내 에코 문을 얻을 내 JSON 문자열입니다ReferenceError: $json_string_data is not defined
for (i = 0;i < $json_string_data.length;i++){
내 JSON 문자열의 요소를 참조하는 적절한 방법을 알려주시겠습니까? 어떻게 든 JSON 문자열에서 필드 이름을 가져와야합니까?
주의 :'str_replace'는 문자열이 아닌 객체가 필요하고'JSON.parse'로 변경되었으므로 편집으로 제거되었습니다. –
덕분에 인터넷에서 format json string을 검색하여 JSON 출력을 붙여 넣을 수있는 사이트를 찾고 포맷을 확인하여 향후 게시물에 사용할 것입니다. 오늘 밤 JSON 구문을 사용하겠습니다. Google 스프레드 시트를 기반으로 이전 Google지도 V2가 다시 작동하므로 숨쉴 공간이 생겼습니다. – Steve
마지막 코드에서 mysql 데이터를 가져 오는 중 사용하고 있습니다. JSON 대신 XML을 사용하는 예제를 발견했습니다. – Steve