|
Скрипт для формирования файла прайс листа в XML для выгрузки данных в систему сравнения товаров Price.ua.
Описание скрипта
Этот скрипт формирует XML файл с товарами магазина для системы сравнения товаров Price.ua.
Скачать
От вебмастера требуется указать в самом скрипте параметры работы скрипта и подправить SQL запросы и переменные.
Это скрипт можно использовать как заготовку для формирования выгрузки прайса в XML
Документация
Для правильного формирования файла выгрузки в скрипте должны быть указаны следующие переменные:
$url - адрес магазина
$rate - курс гривен за доллар, по хорошему курс должен вытягивания из курса настроек
В строке $dbh = mysql_connect("", "", "") нужно указать параметры доступа к серверу баз данных MySQL.
В этой строке mysql_select_db("") подключаемся к конкретной базе данных.
Также в скрипте нужно будет указать такие запросы к базе данных:
1. Запрос на перечень категорый товаров
2. Запрос на перечень товаров к выгрузке.
Параметры выгружаемых товаров необходимо указать в соответствующих параметрах формируемого XML файла.
Исходник скрипта
===cut====
< html>
< head>
< title>< /title>
< /head>
< body>
< ?php
// (c) http://peredovik.org/
// адрес магазина
$url = "peredovik.org";
//курс гривен за доллар, по хорошему здесь процедура вытягивания курса из настроек шопа
$rate = "8";
print "Export XML for Price.ua";
$doc = new DomDocument(`1.0`);
$cur = $doc->createElement(`currency`);
$currate = $cur->setAttribute("code", "USD");
$currate = $cur->setAttribute("rate", $rate);
$doc->appendChild($cur);
// если в прайс-листе цена указана Доллар
$catalog = $doc->createElement(`catalog`);
//здесь прописать свои параметры доступа к базе данных
$dbh = mysql_connect("", "", "");
if (!$dbh) {
echo "Ошибка подключения к серверу MySQL";
exit;
}
// Соединились, теперь выбираем базу данных:
mysql_select_db("");
//здесь запрос к базе данных для получения данных о категориях товаров
$q = "SELECT * FROM goodscat";
$req = mysql_query($q);
for ($c = 0; $c < mysql_num_rows($req); $c++) {
$f = mysql_fetch_array($req);
$razdel = $doc->createElement(`category`, $f[desc]);
$razd = $razdel->setAttribute("id", $f[id]);
$razd = $razdel->setAttribute("parentid", "1");
$catalog->appendChild($razdel);
}
$doc->appendChild($catalog);
$items = $doc->createElement(`items`);
//здесь запрос к базу данных с получением данных о товарах
$q = "SELECT * FROM goods";
$req = mysql_query($q);
for ($c = 0; $c < mysql_num_rows($req); $c++) {
$f = mysql_fetch_array($req);
$item = $doc->CreateElement(`item`);
$item->setAttribute("id", $f[id]);
$name = $doc-> CreateElement(`name`);
$name-> AppendChild ($doc-> CreateTextNode($f[desc]));
$categoryId = $doc-> CreateElement(`categoryid`);
$categoryId-> AppendChild ($doc-> CreateTextNode(`2`));
$priceusd = $doc-> CreateElement(`priceusd`);
$priceusd-> AppendChild ($doc-> CreateTextNode($f[price]));
$priceuah = $doc-> CreateElement(`priceuah`);
$priceuah-> AppendChild ($doc-> CreateTextNode(`805`));
$url = $doc-> CreateElement(`url`);
$url-> AppendChild ($doc-> CreateTextNode(`2`));
$item->appendChild($name);
$item->appendChild($categoryId);
$item->appendChild($priceusd);
$item->appendChild($priceuah);
$item->appendChild($url);
$items->appendChild($item);
}
$doc->appendChild($items);
$doc->formatOutput = true;
$doc->encoding = "windows-1251";
$filename = `XMLpriceua.xml`;
$doc->save($filename);
print "< a href=" http ://$url/$filename">$url/$filename
";
/?>
< form name="" action="" method="post">
< input name="act" type="hidden" value="xml">
< input type="submit" value="Send">
< /form>
Сформировать файл XML
< /body>
< /html>
====сut=====
Авторство
Скрипт разработан Владимиром Самойленко ( vovan4u@ukr.net ) в рамках проекта Прайс Аналитикс (автоматическое управление размещением позиций в системах сравнения цен).
Этот скрипт распространяется бесплатно при условии сохранения копирайтов и ссылки на сайт разработчика «Передовик Пропаганды» http://peredovik.org/
Комплект поставки
1. Данный файл документации
2. Скрипт для формирования XML файла
|