riapro la discussione in quanto mi sono ri-bloccato su un problema. In pratica la generazione di quel file, serve a dare i dati (markers) ad una mappa di google. Nell'esempio da dove sono partito il file da includere era questo: data.json
Io, invece del file .json , ho cercato di includere come base dati il file .php di cui parlavamo sopra che adesso ha questo codice:
ed effettivamente genera esattamente lo stesso output del file .json dell'esempio, solo che pur vedendosi l'output, includendo il file come base dati nello script di google, non carica i markers e con la funzione [ header("Content-type: text/xml"); ] mi da questo errore:Codice PHP:<?php
require("phpsqlajax_dbinfo.php");
function parseToXML($htmlStr)
{
$xmlStr=str_replace('<','<',$htmlStr);
$xmlStr=str_replace('>','>',$xmlStr);
$xmlStr=str_replace('"','"',$xmlStr);
$xmlStr=str_replace("'",''',$xmlStr);
$xmlStr=str_replace("&",'&',$xmlStr);
return $xmlStr;
}
// Opens a connection to a MySQL server
$connection=mysql_connect ("mysql.netsons.com", $username, $password);
if (!$connection) {
die('Not connected : ' . mysql_error());
}
// Set the active MySQL database
$db_selected = mysql_select_db($database, $connection);
if (!$db_selected) {
die ('Can\'t use db : ' . mysql_error());
}
// Select all the rows in the markers table
$query = "SELECT * FROM markers WHERE 1";
$result = mysql_query($query);
if (!$result) {
die('Invalid query: ' . mysql_error());
}
// header("Content-type: text/xml");
$code = '';
$code .= 'var data = {"Store": [';
while ($row = @mysql_fetch_assoc($result)){
$code .= '{"id":' . $row['id'] . ', ';
//$code .= '"name":"' . parseToXML($row['name']) . '", ';
//$code .= '"address":"' . parseToXML($row['address']) . '", ';
$code .= '"lat":' . $row['lat'] . ', ';
$code .= '"lng":' . $row['lng'] . '}';
$code .= ', ';
};
$code = substr($code, 0, -2); // questo se vuoi eliminare l'ultima ","
$code .= ']}';
print $code;
?>
ho fatto un gran casino...codice:Errore interpretazione XML: errore di sintassi Indirizzo: http://www.xx.xx/storelocator/data.php Linea numero 1, colonna 1: var data = {"Store": [{"id":3928, "lat":41.9581607, "lng":12.8012214}, {"id":4460, "lat":4... ^Si dovrebbe convertire questo script in json ? oppure c'è una soluzione diversa più semplice? Grazie ancora!!!
lo script google è questo se può essere d'aiuto:
codice:<script src="http://maps.google.com/maps/api/js?sensor=false"></script> <script type="text/javascript" src="data.php"></script> <script type="text/javascript"> var script = '<script type="text/javascript" src="markerclusterer'; if (document.location.search.indexOf('compiled') !== -1) { script += '_compiled'; } script += '.js"><' + '/script>'; document.write(script); </script> <script type="text/javascript"> function initialize() { var center = new google.maps.LatLng(42.26, 11.34); var map = new google.maps.Map(document.getElementById('map'), { zoom: 5, center: center, mapTypeId: google.maps.MapTypeId.ROADMAP }); var markers = []; for (var i = 0; i < data.Store.length ; i++) { var dataStore = data.Store[i]; var latLng = new google.maps.LatLng( dataStore.lat, dataStore.lng); var marker = new google.maps.Marker({ position: latLng }); markers.push(marker); } var markerCluster = new MarkerClusterer(map, markers); } google.maps.event.addDomListener(window, 'load', initialize); </script>![]()

Si dovrebbe convertire questo script in json ? oppure c'è una soluzione diversa più semplice? Grazie ancora!!!
Rispondi quotando