[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Два одинаковых xml-файла выводятся по-разному
SmorodinKA
Добрый вечер. У меня такая проблема. Загружаю карту Яндекс и на нее объекты через xml. Вот скрипт:

 function init ()
{
coord_x = "<?=$area['coord_x']?>";
coord_y = "<?=$area['coord_y']?>";
scale = "<?=$area['scale']?>";

myMap = new ymaps.Map('mapdiv', {center:[coord_x, coord_y],zoom:scale});
myMap.controls
.add('zoomControl', { left: 5, top: 5 })
.
add('mapTools', { left: 35, top: 5 });


[
b]Здесь в id я могу передавать разные значения[/b]
ymaps.geoXml.load('http://u8814306.plsk.regruhosting.ru/xml_objects.php?id=0').then(function (res) {
myObjects = res.geoObjects;
myMap.geoObjects.add(myObjects);
if (res.mapState) {
res.mapState.applyToMap(myMap);
}
}
);


}


Теперь скрипт создания xml-файла:
<?php
header("Content-type: text/xml");
include("settings.php");
include("checkArea.php");

echo '<ymaps xmlns="http://maps.yandex.ru/ymaps/1.x" xmlns:gml="http://www.opengis.net/gml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maps.yandex.ru/schemas/ymaps/1.x/ymaps.xsd">
<Representation xmlns="http://maps.yandex.ru/representation/1.x">

<Style gml:id="commonStyle">
<iconStyle>
<size x="32" y="37"/>
<offset x="-16" y="-18"/>
</iconStyle>

<balloonContentStyle>
<template>#balloonTemplate</template>
</balloonContentStyle>
</Style>

<Style gml:id="styleHotels">
<parentStyle>#commonStyle</parentStyle>
<iconStyle>
<href>http://u8814306.plsk.regruhosting.ru/img/s1.png</href>
</iconStyle>
</Style>


<Template gml:id="balloonTemplate">
<text><![CDATA[
<div style="font-size:12px;">
<div style="color:#ff0303;font-weight:bold">$[name]</div>
</div>]]></text>
</Template>
</Representation>

<GeoObjectCollection>
<gml:name>Объекты карте</gml:name>
<gml:featureMembers>'
;

if ($_GET['id'] != 0)
{
$query= mysql_query("SELECT * FROM `settlement` WHERE id_district='".intval($_GET['id'])."' ") or die(mysql_error());
}
elseif ($_GET['id'] == 0)
{
$query= mysql_query("SELECT settlement.* FROM `settlement`
LEFT JOIN `district` ON settlement.id_district = district.id
WHERE district.id_area = '"
.intval($area['id'])."' ") or die(mysql_error());
}
while ($result = mysql_fetch_array($query))
{
$query1 = mysql_query("SELECT * FROM `object` WHERE id_settlement='".intval($result['id'])."' ") or die(mysql_error());
while ($par1 = mysql_fetch_array($query1))
{
echo '<GeoObject gml:id="', $par1['id'], '">';
echo '<gml:name>', htmlspecialchars($par1['name']), '</gml:name>';
echo '<gml:metaDataProperty>';
echo '<AnyMetaData>';
echo '<adress>',htmlspecialchars($par1['name']),'</adress>';
echo '</AnyMetaData>';
echo '</gml:metaDataProperty>';
echo '<gml:Point>';
echo '<gml:pos>', $par1['coord_y'], ' ', $par1['coord_x'], '</gml:pos>';
echo '</gml:Point>';
echo '<style>#styleHotels</style>';
echo '</GeoObject>';
echo "\n";
}
}


echo '</gml:featureMembers>
</GeoObjectCollection>
</ymaps>'
;
?>


Система такая, если передается id не равное нулю, то выводятся объекты определенного района, если id=0, то объекты всей области. Так вот если передать id=21 и id=0, то создаются два идентичных xml-файла, но в случае с нулем метки не отображаются на карте. Где я туплю, подскажите?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.