Вылезает ошибка:
Fatal error: Cannot use object of type stdClass as array in /var/www/u0788916/data/www/gdonate.ru/terminal.php on line 34
Вот код:
<?php
$QueryType = $_GET['QueryType'];
$TransactionId = $_GET['TransactionId'];
$Account = $_GET['Account'];
$TransactionDate = $_GET['TransactionDate'];
$Amount = $_GET['Amount'];
$RevertId = $_GET['RevertId'];
$RevertDate = $_GET['RevertDate'];
$Comment = $_GET['Comment'];
$TransactionExt = $_GET['TransactionExt'];
//?QueryType=check&TransactionId=1
//?QueryType=pay&TransactionId=1&TransactionExt=1&Amount=100
$url = "demo.abills.net.ua:9443"; // Указываете адрес биллинга Abills
$user = "abills"; // Указываете логин от административного аккаунта
$passwd = "demo"; // Указываете пароль от админнистративного аккаунта
$api = "1523615231263123"; // Указываете API ключ от Abills
switch ($QueryType) {
case 'check':
/*echo '<?xml version="1.0" encoding="UTF-8"?>
<Response>
<TransactionId>'.$TransactionId.'</TransactionId>
<ResultCode>0</ResultCode>
<Comment></Comment>
</Response>';*/
$status = file_get_contents('https://'.$url.'/admin/index.cgi?qindex=15&UID='.$Account.'&SUMMARY_SHOW=1&EXPORT=1&API_KEY='.$api);
$check_status = json_decode($status);
//$active = $check_status[0]->CONTENT->Статус;
//$error = $check_status->ERROR;
if($check_status[0]->CONTENT->Статус == 'Активно'){
$xml = new XMLWriter(); //создаем новый экземпляр класса XMLWriter
$xml->openMemory(); //использование памяти для вывода строки
$xml->startDocument(); //установка версии XML в первом теге документа
$xml->startElement("Response"); //создание корневого узла
$xml->writeElement("TransactionId", $TransactionId); //ID платежа на стороне терминала
$xml->writeElement("ResultCode", "0"); //Статус для оповещения терминала
//$xml->writeElement("Comment", $Comment); //Комментарий при желание
$xml->endElement(); //закрытие корневого элемента
echo $xml->outputMemory(); //завершение записи в XML
}elseif($check_status[0]->CONTENT->Статус == 'Отключено'){
$xml = new XMLWriter(); //создаем новый экземпляр класса XMLWriter
$xml->openMemory(); //использование памяти для вывода строки
$xml->startDocument(); //установка версии XML в первом теге документа
$xml->startElement("Response"); //создание корневого узла
$xml->writeElement("TransactionId", $TransactionId); //ID платежа на стороне терминала
$xml->writeElement("ResultCode", "21"); //Статус для оповещения терминала
//$xml->writeElement("Comment", $Comment); //запись элемента
$xml->endElement(); //закрытие корневого элемента
echo $xml->outputMemory(); //завершение записи в XML
}elseif($check_status->ERROR == 'Undefined UID'){
$xml = new XMLWriter(); //создаем новый экземпляр класса XMLWriter
$xml->openMemory(); //использование памяти для вывода строки
$xml->startDocument(); //установка версии XML в первом теге документа
$xml->startElement("Response"); //создание корневого узла
$xml->writeElement("TransactionId", $TransactionId); //ID платежа на стороне терминала
$xml->writeElement("ResultCode", "24"); //Статус для оповещения терминала
//$xml->writeElement("Comment", $Comment); //запись элемента
$xml->endElement(); //закрытие корневого элемента
echo $xml->outputMemory(); //завершение записи в XML
}
break;
case 'pay':
/*echo '<?xml version="1.0" encoding="UTF-8"?>
<Response>
<TransactionId>'.$TransactionId.'</TransactionId>
<TransactionExt>'.$TransactionExt.'</TransactionExt>
<Amount>'.$Amount.'</Amount>
<ResultCode>0</ResultCode>
</Response>';*/
$xml = new XMLWriter(); //создаем новый экземпляр класса XMLWriter
$xml->openMemory(); //использование памяти для вывода строки
$xml->startDocument(); //установка версии XML в первом теге документа
$xml->startElement("Response"); //создание корневого узла
$xml->writeElement("TransactionId", $TransactionId);//ID платежа на стороне терминала
$xml->writeElement("TransactionExt", $TransactionExt); //ID платежа на стороне провайдера
$xml->writeElement("Amount", $Amount); //Сумма для зачиления
$xml->writeElement("ResultCode", "0"); //Статус для оповещения терминала
$xml->endElement(); //закрытие корневого элемента
echo $xml->outputMemory(); //завершение записи в XML
file_get_contents('https://'.$url.'/admin/index.cgi?qindex=2&UID='.$Account.'&xml=1&DESCRIBE=Терминал+№'.$TransactionId.'&header=1&SUM='.$Amount.'&add=1&user='.$user.'&passwd='.$passwd.'');
break;
case 'cancel':
/*echo '<?xml version="1.0" encoding="UTF-8"?>
<Response>
<TransactionId>'.$TransactionId.'</TransactionId>
<RevertId>'.$RevertId.'</RevertId>
<TransactionExt>'.$TransactionExt.'</TransactionExt>
<Amount>'.$Amount.'</Amount>
<ResultCode>0</ResultCode>
</Response>';*/
$xml = new XMLWriter(); //создаем новый экземпляр класса XMLWriter
$xml->openMemory(); //использование памяти для вывода строки
$xml->startDocument(); //установка версии XML в первом теге документа
$xml->startElement("Response"); //создание корневого узла
$xml->writeElement("TransactionId", $TransactionId);
$xml->writeElement("RevertId", $RevertId);
$xml->writeElement("TransactionExt", $TransactionExt); //запись элемента
$xml->writeElement("Amount", $Amount); //запись элемента
$xml->writeElement("ResultCode", "0"); //запись элемента
$xml->endElement(); //закрытие корневого элемента
echo $xml->outputMemory(); //завершение записи в XML
break;
default:
break;
}