2022-06-06 21:30:34 +00:00
< ? php
2022-12-19 21:15:56 +00:00
function getResponseError ( $message )
{
2023-01-28 02:24:37 +00:00
return json_encode (
[
'error' => [
'message' => $message ,
],
]
);
2022-06-06 21:30:34 +00:00
}
2022-12-19 21:15:56 +00:00
function getResponseSuccess ( $message )
2022-06-06 21:30:34 +00:00
{
2023-01-28 02:24:37 +00:00
return json_encode (
[
'result' => [
'message' => $message ,
],
]
);
2022-06-06 21:30:34 +00:00
}
date_default_timezone_set ( 'Europe/Moscow' );
2022-12-19 21:15:56 +00:00
$c = [
2023-01-28 02:24:37 +00:00
/* MySQL База данных */
'db_name' => 'pay_operations' , //Таблица в которую заносятся данные
'db_host' => 'localhost' ,
'db_user' => 'newcom1_abk' ,
'db_pass' => '4nWYsIM[c?}P' ,
'db_base' => 'newcom1_abk' ,
/* Настройки платежей
2023-01-10 16:29:32 +00:00
'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)
2022-12-19 21:15:56 +00:00
'key' => 'qtzl0igb' , //gamedealer key
2023-01-10 16:29:32 +00:00
'id' => '65643' //ID проекта*/
2022-12-19 21:15:56 +00:00
];
2022-06-06 21:30:34 +00:00
2022-12-19 21:15:56 +00:00
function connect_db ( $c )
{
2023-01-28 02:24:37 +00:00
$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' );
2022-12-19 21:15:56 +00:00
}
$request = $_GET ;
if ( empty ( $request [ 'method' ])
2023-01-28 02:24:37 +00:00
|| empty ( $request [ 'params' ])
|| ! is_array ( $request [ 'params' ])
2022-12-19 21:15:56 +00:00
) {
2023-01-28 02:24:37 +00:00
echo getResponseError ( 'Invalid request' );
die ();
2022-12-19 21:15:56 +00:00
}
$method = $request [ 'method' ];
$params = $request [ 'params' ];
if ( $_GET [ 'method' ] == " check " ) {
2023-01-28 02:24:37 +00:00
echo getResponseSuccess ( 'CHECK is successful' );
die ();
2022-12-19 21:15:56 +00:00
}
//MERCHANT_ORDER_ID=142&P_PHONE=380688028300&P_EMAIL=evhenii_kula%40mail.ru&CUR_ID=94&AMOUNT=90&MERCHANT_ID=65643&SIGN=c0fc70d5446614597d44ff13f2c7a6a5&intid=29728441
/*
MERCHANT_ORDER_ID
P_PHONE
P_EMAIL
CUR_ID
AMOUNT
MERCHANT_ID
SIGN
intid
2023-01-10 16:29:32 +00:00
https :// а др е с _ва ше г о _о б р а б о тчика ?
2022-12-19 21:15:56 +00:00
method = check
params [ account ] = userId
params [ date ] = 2012 - 10 - 01 12 : 32 : 00
params [ operator ] = beeline
params [ paymentType ] = mc
params [ projectId ] = 1
params [ phone ] = 9 XXXXXXXXX
params [ payerSum ] = 10.00
params [ payerCurrency ] = RUB
params [ signature ] = 9 bdf52a4830779a1383ac24f1b3ed054
params [ orderSum ] = 10.00
params [ orderCurrency ] = RUB
params [ unitpayId ] = 1234567
params [ test ] = 0
*/
if ( $_GET [ 'method' ] == " pay " ) {
2023-01-28 02:24:37 +00:00
connect_db ( $c );
$nick = mysql_fetch_array (
mysql_query ( 'SELECT * FROM `pay_operation` WHERE `id` = "' . $params [ 'account' ] . '" LIMIT 1' )
);
if ( ! isset ( $nick [ 'good' ])) {
echo getResponseError ( 'Bad order' );
die ();
}
$user = mysql_fetch_array ( mysql_query ( 'SELECT * FROM `users` WHERE `id` = "' . $nick [ 'uid' ] . '" LIMIT 1' ));
if ( isset ( $params [ 'account' ])) {
if ( $nick [ 'good' ] != 0 ) {
echo getResponseError ( 'Already Used' );
} 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` = "' . $params [ 'account' ] . '" LIMIT 1'
);
mysql_query (
'UPDATE `users` SET `catch` = `catch` + ' . $nick [ 'ekr' ] . ' WHERE `id` = "' . $nick [ 'uid' ] . '" LIMIT 1'
);
$cmsg = new ChatMessage ();
$cmsg -> setCity ( $user [ 'city' ]);
$cmsg -> setRoom ( $user [ 'room' ]);
$cmsg -> setLogin ( 'Банкир' );
$cmsg -> setTo ( $user [ 'login' ]);
$cmsg -> setText ( " Н а Ваш игровой счет зачислено { $nick [ 'ekr' ] } екр. Благодарим В а с за покупку! " );
$cmsg -> setType ( 5 );
( new Chat ()) -> sendMsg ( $cmsg );
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' )
);
$cmsg = new ChatMessage ();
$cmsg -> setCity ( $referal [ 'city' ]);
$cmsg -> setRoom ( $referal [ 'room' ]);
$cmsg -> setLogin ( 'Банкир' );
$cmsg -> setTo ( $referal [ 'login' ]);
$cmsg -> setText ( " Н а Ваш игровой счет зачислено $refecr екр, благодаря вашему рефералу { $user [ 'login' ] } ! " );
$cmsg -> setType ( 5 );
( new Chat ()) -> sendMsg ( $cmsg );
}
echo getResponseSuccess ( 'PAY is successful' );
}
} else {
echo getResponseError ( 'No order' );
}
die ();
2022-06-06 21:30:34 +00:00
}