Advertisement
Guest User

Untitled

a guest
Sep 19th, 2017
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 3.28 KB | None | 0 0
  1. <?php
  2.  
  3. // 
  4. //   Merchant 2pay
  5. //   Popkov I. Sergey
  6. //   ICQ: 14296442                      
  7. //                                  
  8.  
  9.     header( 'Content-type: text/xml' );
  10. //Ип адреса, с которых будет приходить запрос. Для защиты.
  11.     $check_ip[]="82.146.40.60";
  12.     $check_ip[]="188.120.245.101";
  13.     $check_ip[]="188.120.245.102";
  14.     $date=date("d.m.y");
  15. //======================================настройки============================================
  16. // Секретный ключ
  17.     $secret_key = "";
  18. // Переменные для подключения к базе данных, впишите те, которые использовали при установке базы данных
  19.     $server='';
  20.     $user='';
  21.     $pass='';
  22.     $db='';
  23. //===========================================================================================
  24.     $flag = $_REQUEST['command'];
  25.     $md5 = $_REQUEST['md5'];
  26.    
  27. // Идентификатор платежа
  28.     $v1 = $_REQUEST['v1'];
  29.    
  30. // Дополнительные параметры 
  31.     $v2 = $_REQUEST['v2'];
  32.     $v3 = $_REQUEST['v3'];
  33.  
  34.     if( isset($_REQUEST['id']) ) $id=$_REQUEST['id']; else $id=0;
  35.     $kod=1;
  36.    
  37. // Проверка ип   
  38.     if (in_array($_SERVER['REMOTE_ADDR'], $check_ip)) {
  39.    
  40. // Подключение к базе данных
  41.     mysql_connect($server, $user, $pass) or die("Can't connect to database");
  42.     mysql_select_db($db) or die("Can't select database ".$db);
  43.  
  44.         // Если статус запрос
  45.         if( ($flag == 'status') && ($md5 == md5($flag.$v1.$secret_key)) )
  46.         {   // Ищем платеж
  47.             $sql = mysql_query("SELECT * FROM `payments` WHERE `order_id`='".$v1."'");
  48.             $rows = mysql_num_rows($sql);
  49.             $idpay = mysql_fetch_array($sql);
  50.             if ($rows > 0) {
  51.                 $desc = $idpay['amount'];
  52.             } else {
  53.                 $desc = '0';
  54.             }
  55.         } else
  56.         {   // Если команда на платеж
  57.             if( ($flag == 'pay') && ($md5 == md5($flag.$v1.$id.$secret_key)) )
  58.             {
  59.                 $sql=mysql_query("SELECT * FROM `2pay_payment` WHERE `id`='".$id."'");
  60.                 $rows = mysql_num_rows($sql);
  61.                 // Если платеж был проведен ранее
  62.                 if ($rows > 0)
  63.                 {
  64.                     $kod=0;
  65.                     $desc='Payment was send earlier';
  66.                 } else
  67.                 {   // Пытаемся завершить процедуру
  68.                     $sql=mysql_query("UPDATE `payment` SET status='done' WHERE `order_id`='".$v1."' AND sum='".$_REQUEST['sum']."'");
  69.                     $sql2=mysql_query("INSERT INTO `2pay_payment` (`count`,`date`,`id`) VALUES ('".$_REQUEST['sum']."','".$date."','".$id."')");
  70.                     if( $sql==true && $sql2 == true)
  71.                     {
  72.                         $kod=0;
  73.                         $desc="ok";
  74.                     } else
  75.                     {
  76.                         $kod=2;
  77.                         $desc="Error during query";
  78.                     }                  
  79.                 }
  80.             } else
  81.             {   // Если неизвестный запрос
  82.                 $kod=2;
  83.                 $desc="Unknown request or account not found";
  84.             }
  85.         }
  86.     } else {        $desc="Parametrs or IP is not correct"; }
  87. // Ответ
  88.     if ($flag == 'status') {$html="<?xml version=\"1.0\" encoding=\"windows-1251\"?><response><amount>".$desc."</amount></response>"; } else
  89.     {$html="<?xml version=\"1.0\" encoding=\"windows-1251\"?><response><id>".$id."</id><sum>".$_REQUEST['sum']."</sum><result>".$kod."</result><comment>".$desc."</comment></response>"; }
  90.     echo $html;
  91. ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement