genaratekml.php
<?php $dzial = $_GET["dzial"]; $atrybut = $_GET["atr"]; if (!$connection) { } if ($atrybut == ""){ $zapytanie = "SELECT * FROM `*` WHERE `category`=".$dzial; $kml[] = '<kml xmlns="http://earth.google.com/kml/2.1">'; $kml[] = ' <Document>'; { $kml[] = ' <Placemark id="placemark' . $row['id'] . '">'; $kml[] = ' <Point>'; $kml[] = ' <coordinates>' . $row['lng'] . ',' . $row['lat'] . '</coordinates>'; $kml[] = ' </Point>'; $kml[] = ' </Placemark>'; } } else { } $kml[] = ' </Document>'; $kml[] = '</kml>'; ?>
mapa.php
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-type" content="text/html; charset=iso-8859-2"> </head> <body onload="onLoad()"> <div id="map_canvas" style="width: 500px; height: 400px; float: left; border: 1px solid black;"></div> <div id="sidebar" style="float: left; height: 400px; width: 150px; border: 1px solid black;"> <table id="sidebarTABLE"> <tbody id="sidebarTBODY"> </tbody> </table> </div> <script type="text/javascript"> var map; var layers = { <?php if (!$connection) { } $zapytanie = "SELECT `title`,`description`, `id` FROM `*` WHERE `section` = 4"; { "name": "'.$wiersz[0].$wiersz[2].'"},'; if ($wiersz[1]!=""){ $zapytanie1 = "SELECT `name`.`id` FROM `*` WHERE `category` =".$sekcje; { "name": "-> '.$wiersz1[0].'"},'; } } } ?> }; function onLoad() { map = new GMap2(document.getElementById("map_canvas")); map.setCenter(new GLatLng(52.75491333708034,19.40185546875), 6); map.addControl(new GSmallMapControl()); map.enableScrollWheelZoom(); for(var layer in layers) { addTR(layer, layers[layer].name); } } function addTR(id) { var layerTR = document.createElement("tr"); var inputTD = document.createElement("td"); var input = document.createElement("input"); input.type = "checkbox"; input.id = id; input.onclick = function () { toggleGeoXML(this.id, this.checked) }; inputTD.appendChild(input); var nameTD = document.createElement("td"); var nameA = document.createElement("a"); nameA.href = layers[id].url; var name = document.createTextNode(layers[id].name); nameA.appendChild(name); nameTD.appendChild(nameA); layerTR.appendChild(inputTD); layerTR.appendChild(nameTD); document.getElementById("sidebarTBODY").appendChild(layerTR); } function toggleGeoXML(id, checked) { if (checked) { var geoXml = new GGeoXml(layers[id].url); layers[id].geoXml = geoXml; if (layers[id].zoom) { map.setZoom(layers[id].zoom); } else { map.setZoom(6); } if (layers[id].lat && layers[id].lng) { map.setCenter(new GLatLng(layers[id].lat, layers[id].lng)); } else { map.setCenter(new GLatLng(52.75491333708034,19.40185546875)); } map.addOverlay(geoXml); } else if (layers[id].geoXml) { map.removeOverlay(layers[id].geoXml); } } </script> </body> </html>
Dodałem * w miejsca danych serwera. Najdziwniejsze dla mnie jest to,że jak się kliknie na link który generuje się w tablicy z checkboxami to ściąga się plik poprawny (generate.php) którego typ to kml. Czyli wszystko poprawnie...ale niestety nie wyświetla znaczników na mapie. Myślę,że to jest spowodowane rozszerzeniem php a nie kml. Z góry dzięki za sugestie .