$val) { // $answer .= $key.' => '.$val.PHP_EOL; //} $c = [ /* MySQL База данных */ 'db_name' => 'pay_operations', //Таблица в которую заносятся данные 'db_host' => 'localhost', 'db_user' => 'newcom1_abk', 'db_pass' => '4nWYsIM[c?}P', 'db_base' => 'newcom1_abk', /* Настройки платежей 'ip_list' => array('127,0,0,1,188.166.34.68,136.243.38.147,136.243.38.149,136.243.38.150,136.243.38.151,136.243.38.189,88.198.88.98'), //Указывать через запятую (Разрешенные IP) 'key' => 'qtzl0igb', //gamedealer key 'id' => '65643' //ID проекта*/ ]; function connect_db($c) { $db = mysql_connect($c['db_host'], $c['db_user'], $c['db_pass']) or die('Ошибка подключения к MySQL серверу!'); mysql_select_db($c['db_base'], $db) or die('Ошибка подключения к базе данных!'); mysql_query('SET NAMES utf8mb4'); } $needle = $dataSet['ik_sign']; unset($dataSet['ik_sign']);// удаляем из данных строку подписи ksort($dataSet, SORT_STRING); // сортируем по ключам в алфавитном порядке элементы массива $test_key = '8RRwZKMHllBKtux6'; // В данном случае используется тестовый ключ array_push($dataSet, $test_key); // добавляем в конец массива ключ $signString = implode(':', $dataSet); // конкатенируем значения через символ ":" $sign = base64_encode( md5($signString, true) ); // берем MD5 хэш в бинарном виде по сформированной строке и кодируем в BASE64 if ($needle == $sign) { $answer .= 'Sign successfully' . PHP_EOL; echo 'OK'; connect_db($c); $nick = mysql_fetch_array( mysql_query('SELECT * FROM `pay_operation` WHERE `id` = "' . $dataSet['ik_pm_no'] . '" LIMIT 1') ); $user = mysql_fetch_array(mysql_query('SELECT * FROM `users` WHERE `id` = "' . $nick['uid'] . '" LIMIT 1')); if (isset ($dataSet['ik_pm_no'])) { if ($nick['good'] != 0) { echo "Уже начисленно"; } else { mysql_query( 'UPDATE `users` SET `money2` = `money2` + ' . $nick['ekr'] . ' WHERE `id` = "' . $nick['uid'] . '" LIMIT 1' ); mysql_query( 'UPDATE `pay_operation` SET `good` = "' . time( ) . '" WHERE `id` = "' . $dataSet['ik_pm_no'] . '" LIMIT 1' ); mysql_query( 'UPDATE `users` SET `catch` = `catch` + ' . $nick['ekr'] . ' WHERE `id` = "' . $nick['uid'] . '" LIMIT 1' ); //mysql_query('INSERT INTO `'.$c['db_name'].'` (`time`,`type`,`ip`,`value`,`money`,`project`) VALUES ("'.time().'","'.mysql_real_escape_string($type).'","'.$_SERVER['HTTP_X_REAL_IP'].'","'.mysql_real_escape_string($value).'","'.mysql_real_escape_string($money).'","'.mysql_real_escape_string($this->id).'")'); $r = '' . date( 'd.m.Y H:i' ) . ' Алхимик Администратор / Автоматическая оплата сообщает: '; if ($user['sex'] == 1) { $r .= 'Уважаемая'; } else { $r .= 'Уважаемый'; } $r .= ' ' . $user['login'] . ', на Ваш игровой счет зачислено ' . $nick['ekr'] . ' Еврокредитов. Благодарим Вас за покупку!'; $chatDto = new ChatMessage(); $chatDto->setCity($user['city']); $chatDto->setRoom($user['room']); $chatDto->setTo($user['login']); $chatDto->setText($r); $chatDto->setTime(-1); $chatDto->setType(5); (new Chat())->sendMsg($chatDto); if ($nick['ref'] != 0) { $refecr = round(($nick['ekr'] / 10)); mysql_query( 'UPDATE `users` SET `money2` = `money2` + ' . $refecr . ' WHERE `id` = "' . $nick['ref'] . '" LIMIT 1' ); $referal = mysql_fetch_array( mysql_query('SELECT * FROM `users` WHERE `id` = "' . $nick['ref'] . '" LIMIT 1') ); $r = '' . date( 'd.m.Y H:i' ) . ' Алхимик Администратор / Реферальный заработок сообщает: '; if ($referal['sex'] == 1) { $r .= 'Уважаемая'; } else { $r .= 'Уважаемый'; } $r .= ' ' . $referal['login'] . ', на Ваш игровой счет зачислено ' . $refecr . ' Еврокредитов. Благодоря вашему рефералу!' . $user['login']; $chatDto = new ChatMessage(); $chatDto->setCity($referal['city']); $chatDto->setRoom($referal['room']); $chatDto->setTo($referal['login']); $chatDto->setText($r); $chatDto->setTime(-1); $chatDto->setType(5); (new Chat())->sendMsg($chatDto); } echo "Покупател: " . $user['login'] . " | ID: " . $nick['uid'] . " | Сумма: " . $nick['ekr'] . " | ID операции: " . $dataSet['ik_pm_no'] . "
"; if (isset ($referal['id'])) { echo "Реферал(тот кто привел): " . $referal['login'] . " | ID: " . $referal['id'] . " | Сумма: " . $refecr . "
"; } else { echo "Пользователь реферал не найден!!"; } } } else { echo "Покупатель не указан!"; } } else { $answer .= 'Sign do not match' . PHP_EOL; echo 'Something bad'; } $answer .= 'IK sing :' . $needle . PHP_EOL; $answer .= 'locally formed :' . $sign . PHP_EOL; file_put_contents('answer.txt', $answer); //35.233.69.55, 34.77.232.58, 35.240.117.224