Предмет:
Тип роботи:
Дипломна робота
К-сть сторінок:
68
Мова:
Українська
всіх записів з таблиці markers
$ Query = "SELECT * FROM markers WHERE 1"
$ Result = mysql_query ($ query);
if (! $ result) {
die ('Невірний запит:'. mysql_error ());
}
header ("Content-type: text / xml");
// Цикл проходу по всіх вибраних запису; створення вузла для кожної
while ($ row =mysql_fetch_assoc ($ result)) {
// Додавання нового вузла в XML
$ Node = $ doc-> create_element ("marker");
$ Newnode = $ parnode-> append_child ($ node);
$ Newnode-> set_attribute ("name", $ row ['name']);
$ Newnode-> set_attribute ("address", $ row ['address']);
$ Newnode-> set_attribute ("lat", $ row ['lat']);
$ Newnode-> set_attribute ("lng", $ row ['lng']);
$ Newnode-> set_attribute ("type", $ row ['type']);
}
$ Xmlfile = $ doc-> dump_mem ();
echo $ xmlfile;
?>
Використання PHP-функції echo для створення XML-файла
У PHP, для початку, потрібно підключитися до БД і зробити вибір необхідних даних за допомогою запиту виду SELECT * (вибрати всі) до таблиці з ім'ям "markers" і пройтися по всіх результатами цієї вибірки. Потім необхідно вивести батьківський вузол за допомогою функції echo і пройтися за результатами вибірки. При цьому необхідно використовувати написану нами функцію parseToXML. Виконання цього скрипта має закінчитися висновком закриває тега markers.
<? Php
require ("phpsqlajax_dbinfo.php");
function parseToXML ($ htmlStr)
{
$ XmlStr = str_replace ('<', '& lt;', $ htmlStr);
$ XmlStr = str_replace ('>', '& gt;', $ xmlStr);
$ XmlStr = str_replace ('"', '& quot;', $ xmlStr);
$ XmlStr = str_replace ("'",' '', $ xmlStr);
$ XmlStr = str_replace ("&", '& amp;', $ xmlStr);
return $ xmlStr;
}
// Відкриваємо з'єднання з MySQL-сервером
$ Connection = mysql_connect (localhost, $ username, $ password);
if (! $ connection) {
die ('Ні з'єднання:'. mysql_error ());
}
// Встановлюємо з'єднання з БД
$ Db_selected = mysql_select_db ($ database, $ connection);
if (! $ db_selected) {
die ('Неможливо використовувати БД:'. mysql_error ());
}
// Вибірка всіх записів з таблиці markers
$ Query = "SELECT * FROM markers WHERE 1"
$ Result = mysql_query ($ query);
if (! $ result) {
die ('Невірний запит:'. mysql_error ());
}
header ("Content-type: text / xml");
// Створення XML-коду, висновок батьківського елементу
echo '<markers>';
// Цикл проходу по всіх вибраних запису; створення вузла для кожної
while ($ row =mysql_fetch_assoc ($ result)) {
// Вивід нового вузла XML
echo '<marker';
echo 'name = "'. parseToXML ($ row ['name']). '"';
echo 'address = "'. parseToXML ($ row ['address']). '"';
echo 'lat = "'. $ row ['lat']. '"';
echo 'lng = "'. $ row ['lng']. '"';
echo 'type = "'. $ row ['type']. '"';
echo '/>';
}
// Кінець XML-файла
echo '</ markers>';
?>
Використання DOM-функцій PHP для створення XML-файла
У PHP, для початку, потрібно ініціалізувати новий XML-документ і створити батьківський вузол "markers". Потім потрібно підключитися до БД і зробити вибір необхідних даних за допомогою запиту виду SELECT * (вибрати всі) до таблиці з ім'ям "markers" і пройтися по всіх результатами цієї вибірки. Для кожного запису в таблиці (кожного закладу) буде створюватися свій вузол в XML-документі, атрибути якого будуть полями з відповідного запису таблиці, - цей вузол буде приєднуватися до батьківського вузла. Після цього Ви отримаєте готовий XML-документ.
<? Php
require ("phpsqlajax_dbinfo.php");
// Створення XML-файла і батьківського елементу
$ Dom = new DOMDocument ("1.0");
$ Node = $ dom-> createElement ("markers");
$ Parnode = $ dom-> appendChild ($ node);
// Відкриття з'єднання з MySQL-сервером
$ Connection = mysql_connect (localhost, $ username, $ password);
if (! $ connection) {die ('Ні з'єднання:'. mysql_error ());}
// Підключення до конкретної БД
$ Db_selected = mysql_select_db ($ database, $ connection);
if (! $ db_selected) {
die ('Неможливо використовувати БД:'. mysql_error ());
}
// Вибірка всіх записів з таблиці markers
$ Query = "SELECT * FROM markers WHERE 1"
$ Result = mysql_query ($ query);
if (! $ result) {
die ('Невірний запит:'. mysql_error ());
}
header ("Content-type: text / xml");
// Цикл проходу по всіх вибраних запису; створення вузла для кожної
while ($ row =mysql_fetch_assoc ($ result)) {
// Додавання нового вузла в XML
$ Node = $ dom-> createElement ("marker");
$ Newnode = $ parnode-> appendChild ($ node);
$ Newnode-> setAttribute ("name", $ row ['name']);
$ Newnode-> setAttribute ("address", $ row ['address']);
$ Newnode-> setAttribute ("lat", $ row ['lat']);
$ Newnode-> setAttribute ("lng", $ row ['lng']);
$ Newnode-> setAttribute ("type", $ row ['type']);
}
echo