1. Patronchik27.07.2024 в 23:23от
  2. TYSON27.07.2024 в 23:23от
Загрузка...

Фикс скрипта магазина без персонального атестата

Тема в разделе "Web-программирование", создана пользователем AlexeyWarZ, 23.09.2013.

Статус темы:
Закрыта.
  1. AlexeyWarZ

    AlexeyWarZ

    Статус:
    Оффлайн
    Регистрация:
    15.11.12
    Сообщения:
    56
    Репутация:
    21 +/-
    Всем привет!
    Я уже создавал тему по LazyPay, но её зафлудили
    Короче, я нашёл почему не работает пиратская версия этого скрипта (нуленная)
    Там в одном файле удалена часть кода + код немного исковеркан
    Вот сам код
    Код:
    <?
    error_reporting(0);
    if (!isset($class)) { $class = 'WMXI'; }
    require_once("wm/$class.php");
    function checkwm($wmid,$wm_pass,$wm_path,$fund) {
    			# Форсирование использования библиотек
    		 define('WMXI_MATH', 'bcmath4'); # Варианты: gmp, bcmath4, bcmath5
    		 define('WMXI_MD4', 'hash'); # Варианты: mhash, hash, class
    
    
    		# Создаём объект класса. Передаваемые параметры:
    		$wmxi = new WMXI(realpath('../WMXI.crt'), 'UTF-8');
    
    		# Параметры инициализации ключем Webmoney Keeper Classic
    		define('WMID', $wmid);
    		define('PASS', $wm_pass);
    		define('KWMFILE', $wm_path);
    
    		$wmkey = array('pass' => PASS, 'file' => KWMFILE); 
    		if($wmxi->Classic(WMID, $wmkey))
    		echo '123';
    		date_default_timezone_set('Europe/Moscow');
    		$res = $wmxi->X3(
    			$fund,  # номер кошелька для которого запрашивается операция
    			0,              # номер операции (в системе WebMoney)
    			0,              # номер перевода
    			0,              # номер счета (в системе WebMoney) по которому выполнялась операция
    			0,              # номер счета
    			date('Ymd',strtotime('-1 day')),       # минимальное время и дата выполнения операции
    			date('Ymd',strtotime('+1 day'))   		# максимальное время и дата выполнения операции
    		);
    		$resp = $res->Sort(false);
    		if($resp['retval'] != 0)
    		{
    			die('Данные неверны!');
    		}
    }
    function testwm($wmid,$wm_pass,$wm_path,$fund)
    {
    		# Форсирование использования библиотек
    		 define('WMXI_MATH', 'bcmath4'); # Варианты: gmp, bcmath4, bcmath5
    		 define('WMXI_MD4', 'hash'); # Варианты: mhash, hash, class
    
    
    		# Создаём объект класса. Передаваемые параметры:
    		$wmxi = new WMXI(realpath('../WMXI.crt'), 'UTF-8');
    
    		# Параметры инициализации ключем Webmoney Keeper Classic
    		define('WMID', $wmid);
    		define('PASS', $wm_pass);
    		define('KWMFILE', $wm_path);
    
    		$wmkey = array('pass' => PASS, 'file' => KWMFILE); 
    		if($wmxi->Classic(WMID, $wmkey))
    		echo '123';
    		date_default_timezone_set('Europe/Moscow');
    		$res = $wmxi->X3(
    			$fund,  # номер кошелька для которого запрашивается операция
    			0,              # номер операции (в системе WebMoney)
    			0,              # номер перевода
    			0,              # номер счета (в системе WebMoney) по которому выполнялась операция
    			0,              # номер счета
    			date('Ymd',strtotime('-1 day')),       # минимальное время и дата выполнения операции
    			date('Ymd',strtotime('+1 day'))   		# максимальное время и дата выполнения операции
    		);
    		$resp = $res->Sort(false);
    		print_r($resp);
    }
    function check_payment($wmid,$wm_pass,$fund,$wm_path,$desc,$amount)
    {
    	if(!empty($wmid) && !empty($wm_pass) && !empty($fund) && !empty($wm_path) && !empty($desc) && !empty($amount))
    	{
    		# Форсирование использования библиотек
    		 define('WMXI_MATH', 'bcmath4'); # Варианты: gmp, bcmath4, bcmath5
    		 define('WMXI_MD4', 'hash'); # Варианты: mhash, hash, class
    
    
    		# Создаём объект класса. Передаваемые параметры:
    		$wmxi = new WMXI(realpath('../WMXI.crt'), 'UTF-8');
    
    		# Параметры инициализации ключем Webmoney Keeper Classic
    		define('WMID', $wmid);
    		define('PASS', $wm_pass);
    		define('KWMFILE', $wm_path);
    
    		if (defined('EKEY') && defined('NKEY')) { $wmkey = array('ekey' => EKEY, 'nkey' => NKEY); }
    		elseif (defined('KWMDATA')) { $wmkey = array('pass' => PASS, 'data' => KWMDATA); }
    		elseif (defined('KWMFILE')) { $wmkey = array('pass' => PASS, 'file' => KWMFILE); }
    		if (isset($wmkey)) { $wmxi->Classic(WMID, $wmkey); }
    		date_default_timezone_set('Europe/Moscow');
    		$res = $wmxi->X3(
    			$fund,  # номер кошелька для которого запрашивается операция
    			0,              # номер операции (в системе WebMoney)
    			0,              # номер перевода
    			0,              # номер счета (в системе WebMoney) по которому выполнялась операция
    			0,              # номер счета
    			date('Ymd',strtotime('Yesterday')),       # минимальное время и дата выполнения операции
    			date('Ymd',strtotime('Tomorrow'))   		# максимальное время и дата выполнения операции
    		);
    
    		$resp = $res->Sort(false);
    		if($resp['operations']['@attributes']['cnt'] == 1) {
    			if($resp['operations']['operation']['desc'] == $desc && $resp['operations']['operation']['amount'] == $amount)
    			{
    				return TRUE;
    			}
    		}
    		elseif (count($resp['operations']['operation']) > 1)
    		{
    			foreach($resp['operations']['operation'] as $oper) 
    			{
    				if($oper['desc'] == $desc && $oper['amount'] == $amount)
    				{
    					return TRUE;
    				}
    			}
    		}
    		else
    		{
    			return FALSE;
    		}
    	}
    	else
    	{
    		return FALSE;
    	}
    }
    ?>

    Если кто то знает как это пофиксить, предлагайте решения.

    Просьба отнестись к теме серьёзно!
    Платные услуги не предлагать

    После решения проблемы я залью этот скрипт на этот форум.​
     
Статус темы:
Закрыта.