[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Из базы данных в XML
Hippƴ
Здравствуйте. Вообщем есть задача из БД вынуть инфу и засунуть в XML средствами php. Я еще глуп немного, но кое как задачу решил, но мое решение кажется довольно грубым и затратным.
Вот что я намутил:
<?php

require("phpsqlajax_dbinfo.php");

// Opens a connection to a MySQL server
$connection=mysql_connect ('localhost', $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 marker table
$query = "SELECT * FROM markers WHERE 1";
$result = mysql_query($query);
if (!$result) {
die('Invalid query: ' . mysql_error());
}

$doc = new DOMDocument('1.0', "UTF-8");
$root = $doc->createElement('markers'); // создаю родительский элемент

while ($row = @mysql_fetch_assoc($result)){
$marker = $doc->createElement('marker');

$attr1 = $doc->createAttribute('id'); // атрибуты прописываю практически вручную
$attr1->value = $row['id'];
$marker->appendChild($attr1);

$attr2 = $doc->createAttribute('name');
$attr2->value = $row['name'];
$marker->appendChild($attr2);

$attr3 = $doc->createAttribute('address');
$attr3->value = $row['address'];
$marker->appendChild($attr3);

$attr4 = $doc->createAttribute('lat');
$attr4->value = $row['lat'];
$marker->appendChild($attr4);

$attr5 = $doc->createAttribute('lng');
$attr5->value = $row['lng'];
$marker->appendChild($attr5);

$root->appendChild($marker); // помещаю все в <markers>
}

$doc->appendChild($root);

$doc->save("geomarkers.xml") // и сохраняю это дерьмо


?>

Думаю очевидно почему мне не нравится это решение...
Прошу помочь найти хорошее решение, или хотя бы усовершенствовать это. Спасибо.
Быстрый ответ:

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