AAA Главная
Примеры PHP Примеры JavaScript Примеры Ajax Примеры CSS,HTML

Прайс в XML

Этот скрипт формирует XML файл с товарами магазина для системы сравнения товаров

От вебмастера требуется указать в самом скрипте параметры работы скрипта и подправить SQL запросы и переменные.

Это php-скрипт можно использовать как заготовку для формирования выгрузки прайса в XML

<html>
<head>
<title></title>
</head>

<body>

<?php

	// (c) http://peredovik.org/
	// адрес магазина
	$shopurl = "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);
	//<currency code="USD" rate="8.19"/> если в прайс-листе цена указана Доллар

	$catalog = $doc->createElement('catalog');

	$agregator = $_POST['agregator'];

	//здесь прописать свои параметры доступа к базе данных
	$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 "<br><br><a href=\"http://$shopurl/$filename\">$shopurl/$filename</a>\n";

?>

<br><br>

<form name="" action="" method="post">
<input name="act" type="hidden" value="xml">
<input type="submit" value="Сформировать файл XML">
</form>

</body>

</html>

© Copyright by Влад Рыбцов http://peredovik.org/praiys_v_xml.html


.

© Copyright 2008-2016 by KDG