ok it' work fine now in the mysql request in the table i select just ( by the zipcode ) the county concerned by the city map showed..
the clustering is good solution if you have a large map with many markers in the same aera but in my page i display just the aera of the city , and now with modification of mysql request i display just the markers related with the city selected the display is fast now in explorer and fireworks thank for your answers and sorry for my bad english Serna On 24 juil, 18:16, serna <[email protected]> wrote: > thank you larry > > i try other solution > > I tried to change the sql query in the file > "phpsqlajax_genxml_toto.php" to select only certain regions of > France. > That way I would never markers of 1000 displayed. maybe it can work > > thank you > > On 24 juil, 17:18, "[email protected]" <[email protected]> > wrote: > > > On Jul 24, 8:05 am, serna <[email protected]> wrote: > > > > thank you > > > > i go on this > > > sitehttp://www.svennerberg.com/2009/01/handling-large-amounts-of-markers-... > > > > and I tried this test page > > > >http://www.svennerberg.com/examples/markers/markerPerformance.html > > > > for all solutions indicated in explorer 8, with more than 2,000 > > > markers that displays an alert window or it crashes. > > > > in firefox no probleme even with 10 000 markers > > > Ask for your money back from Microsoft. > > > This > > thread:http://groups.google.com/group/google-maps-js-api-v3/browse_frm/threa... > > > From this > > search:http://groups.google.com/group/google-maps-js-api-v3/search?hl=en&gro... > > > Points to this > > example:http://google-maps-utility-library-v3.googlecode.com/svn/trunk/marker... > > > Which works for me in IE6 with 1000 markers. > > > -- Larry > > > > On 24 juil, 16:02, "[email protected]" <[email protected]> > > > wrote: > > > > > On Jul 24, 5:38 am, serna <[email protected]> wrote: > > > > > > thank you Pil > > > > > > I display in my page dynamically city by city. for example if you > > > > > click on Paris will be a map of Paris, but if you zoom out you see the > > > > > other markers. > > > > > > if you zoom out again you can see the 9000 markers for France. > > > > > > is what it is possible to change my script to only show markers > > > > > selected area ( while using a php / mysql ) > > > > > Investigate the > > > > markerclusterer:http://groups.google.com/group/google-maps-js-api-v3/search?hl=en&gro... > > > > > -- Larry > > > > > > thank > > > > > > On 24 juil, 13:40, Pil <[email protected]> wrote: > > > > > > > Assuming that all should work as expected in every supported > > > > > > browser, > > > > > > there is only one advisable suggestion: > > > > > > > Limit your initially loaded markers to 300 or lesser. > > > > > > No one can overlook 9000 markers. Even Firefox users will be > > > > > > thankful > > > > > > for the limitations. > > > > > > > On Jul 24, 12:01 pm, serna <[email protected]> wrote: > > > > > > > > Hello, > > > > > > > > sorry for my bad english > > > > > > > > i make a page in localhost with "Using PHP/MySQL with Google Maps" > > > > > > > >http://code.google.com/intl/fr/apis/maps/articles/phpsqlajax_v3.html > > > > > > > > it's work fine but when i have over 9000 locations it' not work on > > > > > > > explorer ( 7 or 8) but it's work on firework > > > > > > > > in explorer i have message > > > > > > > "a script on this page may slow the execution " > > > > > > > > when i have only 300 locations its work on explorer > > > > > > > > the script > > > > > > > > <script src="http://maps.google.com/maps/api/js?sensor=false" > > > > > > > type="text/javascript"></script> > > > > > > > <script type="text/javascript" src="js/jquery.js"></script> > > > > > > > <script type="text/javascript" src="http://gmaps-utility- > > > > > > > library.googlecode.com/svn/trunk/markermanager/release/src/ > > > > > > > markermanager.js"></script> > > > > > > > > <script type="text/javascript" > > > > > > > > //<![CDATA[ > > > > > > > > var customIcons = { > > > > > > > "restaurants": { > > > > > > > icon: 'http://localhost/totos_france/image/icon_map/ > > > > > > > restaurant.png', > > > > > > > shadow: 'http://labs.google.com/ridefinder/images/ > > > > > > > mm_20_shadow.png' > > > > > > > }, > > > > > > > bar: { > > > > > > > icon: 'http://labs.google.com/ridefinder/images/ > > > > > > > mm_20_red.png', > > > > > > > shadow: 'http://labs.google.com/ridefinder/images/ > > > > > > > mm_20_shadow.png' > > > > > > > } > > > > > > > }; > > > > > > > > function load() { > > > > > > > var map = new > > > > > > > google.maps.Map(document.getElementById("EmplacementDeMaCarte"), { > > > > > > > center: new google.maps.LatLng(<?php echo $latit ; ?>, > > > > > > > <?php > > > > > > > echo $longit ; ?>), > > > > > > > zoom: <?php echo $zoom ; ?>, > > > > > > > mapTypeId: 'roadmap' > > > > > > > }); > > > > > > > var infoWindow = new google.maps.InfoWindow; > > > > > > > > // Change this depending on the name of your PHP file > > > > > > > downloadUrl("phpsqlajax_genxml_toto.php", function(data) { > > > > > > > var xml = data.responseXML; > > > > > > > var markers = > > > > > > > xml.documentElement.getElementsByTagName("marker"); > > > > > > > for (var i = 0; i < markers.length; i++) { > > > > > > > var name = > > > > > > > markers[i].getAttribute("name"); > > > > > > > var address = markers[i].getAttribute("address"); > > > > > > > var addresstoto = > > > > > > > markers[i].getAttribute("addresstoto"); > > > > > > > var cptoto = markers[i].getAttribute("cptoto"); > > > > > > > var teltoto = > > > > > > > markers[i].getAttribute("teltoto"); > > > > > > > var type = markers[i].getAttribute("typeresto"); > > > > > > > var point = new google.maps.LatLng( > > > > > > > parseFloat(markers[i].getAttribute("lat")), > > > > > > > parseFloat(markers[i].getAttribute("lng"))); > > > > > > > var html = "<span class=\"textebullgras\">" + name + > > > > > > > "</ > > > > > > > span> <br/> <span class=\"textebullnormal\">" + address + " <br/> > > > > > > > " + > > > > > > > addresstoto + " " + cptoto + "<br/>" + teltoto ; > > > > > > > var icon = customIcons[type] || {}; > > > > > > > var marker = new google.maps.Marker({ > > > > > > > map: map, > > > > > > > position: point, > > > > > > > icon: icon.icon, > > > > > > > shadow: icon.shadow > > > > > > > }); > > > > > > > bindInfoWindow(marker, map, infoWindow, html); > > > > > > > > } > > > > > > > }); > > > > > > > } > > > > > > > > function bindInfoWindow(marker, map, infoWindow, html) { > > > > > > > google.maps.event.addListener(marker, 'click', function() { > > > > > > > infoWindow.setContent(html); > > > > > > > infoWindow.open(map, marker); > > > > > > > }); > > > > > > > } > > > > > > > > function downloadUrl(url, callback) { > > > > > > > var request = window.ActiveXObject ? > > > > > > > new ActiveXObject('Microsoft.XMLHTTP') : > > > > > > > new XMLHttpRequest; > > > > > > > > request.onreadystatechange = function() { > > > > > > > if (request.readyState == 4) { > > > > > > > request.onreadystatechange = doNothing; > > > > > > > callback(request, request.status); > > > > > > > } > > > > > > > }; > > > > > > > > request.open('GET', url, true); > > > > > > > request.send(null); > > > > > > > } > > > > > > > > function doNothing() {} > > > > > > > > //]]> > > > > > > > </script> > > > > > > > > and > > > > > > > > <?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); > > > > > > > $xmlStr=str_replace("é",'é',$xmlStr); > > > > > > > $xmlStr=str_replace("è",'è',$xmlStr); > > > > > > > return $xmlStr; > > > > > > > > } > > > > > > > > // Opens a connection to a MySQL server > > > > > > > $connection=mysql_connect ($host, $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 table_toto WHERE 1"; > > > > > > > $result = mysql_query($query); > > > > > > > > if (!$result) { > > > > > > > die('Invalid query: ' . mysql_error()); > > > > > > > > } > > > > > > > > header("Content-type: text/xml"); > > > > > > > > // Start XML file, echo parent node > > > > > > > echo '<markers>'; > > > > > > > > // Iterate through the rows, printing XML nodes for each > > > > > > > while ($row = @mysql_fetch_assoc($result)){ > > > > > > > // ADD TO XML DOCUMENT NODE > > > > > > > echo '<marker '; > > > > > > > echo 'name="' . utf8_encode($row['nom_toto']) . '" '; > > > > > > > echo 'address="' . utf8_encode($row['adresse_toto']) . '" '; > > > > > > > echo 'addresstoto="' . utf8_encode($row['ville_toto']) . '" '; > > > > > > > echo 'cptoto="' . $row['cp_resto'] . '" '; > > > > > > > echo 'teltoto="' . $row['tel_resto'] . '" '; > > > > > > > echo 'lat="' . $row['lat_resto'] . '" '; > > > > > > > echo 'lng="' . $row['lng_resto'] . '" '; > > > > > > > echo 'typeresto="' . utf8_encode($row['categorie_toto']) . '" '; > > > > > > > echo '/>'; > > > > > > > > } > > > > > > > > // End XML file > > > > > > > echo '</markers>'; > > > > > > > > ?> > > > > > > > > thank you for help > > > > > > > > Serna from France -- You received this message because you are subscribed to the Google Groups "Google Maps JavaScript API v3" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-maps-js-api-v3?hl=en.
