Скачать 307.91 Kb.
|
page Форма ответа: ... Page Пример ini_set('safe_mode','0'); ini_set('max_execution_time',30); set_time_limit(30); require_once('xml2array.php'); class T_MONEXY { var $ApiName = 'test'; var $SecretKey = ''; // var $ApiURL = 'https://www.monexy.com/xml/server.php'; var $ApiHash; function SaveLog($msg) { $fd = fopen('monexy.log', "a"); $str = "[" . date("Y/m/d h:i:s", mktime()) . "] " . $msg; fwrite($fd, $str . "\n"); fclose($fd); } /* Change string encoding */ function _change_encoding($text, $encoding, $entities = false) { $text = $entities ? htmlspecialchars($text, ENT_QUOTES) : $text; return mb_convert_encoding($text, $encoding, 'UTF-8'); } function getmicrotime() { list($usec, $sec) = explode(" ", substr(microtime(), 2)); return substr($sec.$usec, 0, 15); } // Создаем MkTime и ApiHash function MkTime(){ $MkTime = $this->getmicrotime(); $this->ApiHash = sha1($this->ApiName . ':' . $this->SecretKey . ':' . $MkTime); return $MkTime; } function _request($xml, $parse = true) { global $lang; $ch = curl_init(); $url_query[req] = $this->_change_encoding(urlencode($xml), 'UTF-8'); curl_setopt($ch, CURLOPT_URL, $this->ApiURL); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $url_query); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_TIMEOUT, 30); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); $result = curl_exec($ch); if (curl_errno($ch) != 0) { $result = " $result .= " }; curl_close($ch); if ($parse) { $result = urldecode($result); $this->SaveLog($result); $array = array(); $array = xml2array($result); echo ' '; print_r($array); echo ' '; if(is_array($array) && @$array['monexyApi_attr']['mtime'] != '' and isset($array['monexyApi']['Auth']['ApiHash']) && $array['monexyApi']['Auth']['ApiHash'] != ''){ $Hash = sha1($this->ApiName.':'.$this->SecretKey.':'.$array['monexyApi_attr']['mtime']); if($array['monexyApi']['Auth']['ApiHash'] == $Hash){ return $array; } else { echo 'Fail ApiHash'; exit(); } } else { $_SESSION['ERROR_MSG'] = 'Fail data MONEXY.com'; echo 'Fail data MONEXY.com'; exit(); } } else return $result; } /**************************************/ /* Отправить номер телефона */ /* для получения SMS пароля */ /**************************************/ function UserAuth($PhoneNumber) { $xml = ' .' .' .' .' .' .' .' $this->SaveLog($xml); return $this->_request($xml); } /**************************************/ /* Отправить SMS пароль */ /* для входа в Monexy */ /**************************************/ function UserLogin($PhoneNumber,$PhoneSms) { $xml = ' .' .' .' .' .' .' .' .' .' $this->SaveLog($xml); return $this->_request($xml); } /**************************************/ /* Отображение баланса */ /* всех кошельков Monexy */ /**************************************/ function Balance($PhoneNumber,$UserSesson) { $xml = ' .' .' .' .' .' .' .' $this->SaveLog($xml); return $this->_request($xml); } /**************************************/ /* Отображение баланса */ /* всех кошельков Monexy */ /* без SMS */ /**************************************/ function Balance2($PhoneNumber,$UserApiBCode) { $xml = ' .' .' .' .' .' .' .' $this->SaveLog($xml); return $this->_request($xml); } /**************************************/ /* Перевод с кошелька */ /* на кошелек */ /**************************************/ function Payment_Req($PhoneNumber,$UserSesson,$OrderId,$Amount,$OrderDesc,$PayeeLogin,$PayeeCurrency,$PayerCurrency,$AmountType=0,$test=1) { $xml = ' .' .' .' .' .' .' .' '.PHP_EOL .' .' .' '.$PayeeLogin.' '.PHP_EOL .' '.$PayeeCurrency.' '.PHP_EOL .' '.$PayerCurrency.' '.PHP_EOL .' .' .' .' '.PHP_EOL .' $this->SaveLog($xml); return $this->_request($xml); } /**************************************/ /* Перевод с кошелька */ /* на корпоративный кошелек */ /**************************************/ function Payment_Req($PhoneNumber,$UserSesson,$OrderId,$Amount,$OrderDesc,$PayeeCard,$PayeeCurrency,$PayerCurrency,$AmountType=0,$test=1) { $xml = ' .' .' .' .' .' .' .' '.PHP_EOL .' .' .' '.$PayeeCard.''.PHP_EOL .' '.$PayeeCurrency.' '.PHP_EOL .' '.$PayerCurrency.' '.PHP_EOL .' .' .' .' '.PHP_EOL .' $this->SaveLog($xml); return $this->_request($xml); } /**************************************/ /* Подтверждение платежа */ /* SMS кодом */ /**************************************/ function Payment_Conf($PhoneNumber,$UserSesson,$PaymentId,$PaymentSms) { $xml = ' .' .' .' .' .' .' .' '.PHP_EOL .' '.$PaymentId.' '.PHP_EOL .' '.$PaymentSms.' '.PHP_EOL .' '.PHP_EOL .' $this->SaveLog($xml); return $this->_request($xml); } /**************************************/ /* История операций */ /**************************************/ function History($PhoneNumber,$UserSesson,$Currency,$DateFrom,$DateTo,$rows=10) { if(isset($DateFrom) && $DateFrom != ''){ $DateFrom = date_format(date_create($DateFrom),"Y.m.d"); $DateTo = date_format(date_create($DateTo),"Y.m.d"); } else { $DateFrom = ''; $DateTo = ''; } $xml = ' .' .' .' .' .' .' .' .' .' .' 1 '.PHP_EOL .' .' .' .' $this->SaveLog($xml); return $this->_request($xml); } } $MONEXY = new T_MONEXY(); ?> |
Руководство по установке сдо 13 Установка при помощи Инсталлятора 13 Технические требования к оборудованию и системному программному обеспечению сдо 6 | Комиссия по проблемам безопасности граждан и взаимодействию с системой... Общественная экспертиза уровня организации и безопасности дорожного движения в регионах России | ||
Комиссия по проблемам безопасности граждан и взаимодействию с системой... Общественная экспертиза уровня организации и безопасности дорожного движения в регионах России | Структура пояснительной записки к дипломному проекту для студентов... Апк, средства разработки (если не предполагается их анализ и выбор), требования к разрабатываемому программному продукту, требования... | ||
Московские новости, N18, 21. 05. 2004, с 20 Рпц и других религиозных конфессий на территории РФ. Особое внимание уделяется их взаимодействию с социальными институтами армией,... | Прика з Комитета по свободе совести, взаимодействию с религиозными организациями Республики Дагестан и методики проведения конкурса на замещение... | ||
Руководство: Общее руководство праздника осуществляется учителем... Использование средств физического воспитания в организации активного отдыха укрепление здоровья учащихся | Инструкция слушателя для работы с Системой Управления Обучением По дисциплине «Обществознание» представлены конкурсные задания, которые частично автоматически проверяются системой, а частично –... | ||
Инструкция слушателя для работы с Системой Управления Обучением По дисциплине «Обществознание» представлены конкурсные задания, которые частично автоматически проверяются системой, а частично –... | 1. Руководство племенной работой. 1 Руководство племенной работой... Коучинг с помощью нлп: Практическое руководство по достижению поставленных целей / Джозеф О'Коннор, Андреа Лейджес. — Пер с англ.... | ||
Учитель информатики и икт спицкая Лилия Вячеславовна Обобщить и систематизировать знания учащихся по аппаратному, программному обеспечению компьютеров и системам счисления | Совета Законодательного Собрания Иркутской области по взаимодействию... Ательного Собрания Иркутской области по взаимодействию с представительными органами муниципальных образования Иркутской области от... | ||
Совета Законодательного Собрания Иркутской области по взаимодействию... Тельного Собрания Иркутской области по взаимодействию с представительными органами муниципальных образований Иркутской области от... | Руководство по изучению дисциплины «Операционные системы, среды и оболочки» Руководство необходимо для общего ознакомления с дисциплиной и содержит сведения | ||
1 Основные сведения об измерениях Базовой системой любой автоматизированной системы управления технологическими процессами (асу тп) является системой автоматического... | 7. Руководство практикой, обязанности руководителей практики Настоящее «Руководство по качеству» не может быть полностью или частично воспроизведено, тиражировано и распространено без разрешения... |