Search the Community
Showing results for tags 'XML php'.
-
Всем привет, кто может помочь решить проблему. Нужен работающий код XML отчета для подтверждения заказа Вот есть код, но он не хочет работать. Что в нем необходимо подправить. Подскажите, очень нужна помощь. <?PHP $pass="poiu1234"; // Пароль для доступа к XML генератору, который указан в настройках кампании if ($_POST['pass'] != md5($pass) ) die('<?xml version="1.0"?><error>no confirm pass</error>'); $res = ''; preg_match_all("/<item>(.*)<\/item>/Uis", $_POST['xml'], $items); foreach($items[1] as $oid) { // вместо getOrderById вам нужно прописать // свою функцию, которая получает данные из БД $order = getOrderById($oid); $res .= '<item>'; $res .= '<id>' . $oid . '</id>'; $res .= '<status>' . $order['status'] . '</status>'; $res .= '<price>' . $order['price'] . '</price>'; $res .= '</item>'; } $res = '<?xml version="1.0"?><items>' . $res . '</items>'; echo $res; // пример функции получения данных из БД function getOrderById($oid) { $status = 2; $price = 0; // тут предполагается что конект к базе уже есть $res = mysql_query('SELECT * FROM `table_order` WHERE `id`= ' . $oid . ' LIMIT 1'); $row = mysql_fetch_assoc($res); $status = $row['status']; // состояние запрошенного заказа // status: // done (или 1) - подтвержден // wait (или 2) - в ожидании (в процессе обработки) // cancel (или 3) - отклонён $price = $row['cost']; // стоимость товара/услуги. // нужно при типе цели "Процент с продаж", // в цели "Фиксированная оплата" можно в отправлять 0 или не отправлять это поле вовсе return array( 'status' => $status, 'price' => $price); } ?> пишет no confirm pass я так понимаю что-то не так с этой строкой if ($_POST['pass'] != md5($pass) ) При правильной работе, код должен формировать отчет на подобии такого <?xml version="1.0"> <items> <item> <id>12345</id> <status>1</status> <price>57.50</price> </item> <item> <id>2345678</id> <status>wait</status> </item> <item> <id>88088</id> <status>done</status> <price>200</price> </item> <item> <id>333999</id> <status>cancel</status> <price>0</price> </item> </items>