Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Ответ XML


Recommended Posts

Всем привет. У меня есть хороший скрипт для получения данных из ИМ.

Суть в том, что скрипт обращается к файлу init_im, в котором просто копия index.php опенкарта.

Далее делаю нужные мне запросы, получаю ответ, анализирую... короче все хорошо.

Но это на 1.5.6.1.

Попробовал тот же фокус с 3.0.2.3 - фиг.

В смысле запрос выполняется, ответ получаю, но в довесок ответ приходит с html-кодом главной страницы сайта.

Сделал init_im.php так:

<?php
// Version
define('VERSION', '3.0.3.2');
// Configuration
	require_once('/var/www/www/config.php');
// VirtualQMOD
require_once('/var/www/www/vqmod/vqmod.php');
VQMod::bootup();
// VQMODDED Startup
require_once('/var/www/www/system/startup.php');
//require_once('/var/www/www/system/framework.php');
start('catalog');

VQmod нужен, не пинайте.

Запрос идет к файлу 

include("init_im.php");
$xml = new XMLWriter();
$xml->openMemory();
$xml->startDocument();
$xml->startElement("response");
$xml->writeElement('status','OK');

$loader->model('account/customer');
$loader->model('tool/simpleapimain');
$SimpleApiMain = new ModelToolSimpleApiMain($registry);
$customer=new ModelAccountCustomer($registry);

$sxe = @simplexml_load_file($xmlfile);
if (!$sxe) echo "read xml error";
foreach ($sxe->xpath('/data/oc_customer/customer') as $object) {
	if ($object->deleted==1) {
		if ($object->customer_id!=0) {
			$ndb->query("UPDATE ".DB_PREFIX."customer SET status='0' WHERE customer_id='".$object->customer_id."'");
			if ($ndb->error) {echo "db error: ".$ndb->error;}
		}
*************************
*************************
*************************
	}
}
$xml->endElement();
unlink($xmlfile);
echo $xml->outputMemory();

В итоге я получаю 

 

тут много html кода, не буду весь приводить...

<img src="/image/cache/data/payment/qiwi1-35x35.jpg" alt="Qiwi" width="35" height="35" />
                                                <img src="/image/cache/data/payment/wm2-35x35.jpg" alt="Webmoney" width="35" height="35" />
                                                <img src="/image/cache/data/payment/yandex_money1-35x35.jpg" alt="Яндекс.Деньги" width="35" height="35" />
                              </div>
          </div>
  </div>
</footer>
<div class="scroll-top"></div>
<script type="text/javascript" defer src="/_1232b1cf8685db767ea80f0612bd986a.js"></script>

</body>
</html>

<?xml version="1.0"?>
<response><status>OK</status></response> - вот нужные мне 2 строчки

 

<?xml version="1.0"?>
<response><status>OK</status></response>

- вот это я получаю с кучей html. 

 

Вопрос - как не выводить этот html-код страницы, а просто получить xml-ответ?

 

 

Надіслати
Поділитися на інших сайтах

30 минут назад, leos сказал:

Не помогло. Все равно сначала html страницы, потом xml

может есть какое-то более изящное решение, но попробуйте так

ob_start();
include("init_im.php");
ob_end_clean();

 

  • +1 1
Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.