За последние 24 часа нас посетили 58612 программистов и 1842 робота. Сейчас ищут 857 программистов ...

обработчик платежа

Тема в разделе "PHP для новичков", создана пользователем Андрей12, 3 апр 2015.

  1. Андрей12

    Андрей12 Новичок

    С нами с:
    18 фев 2015
    Сообщения:
    131
    Симпатии:
    0
    где мне взять обработчик платежа для free-kassa? обработчик Payeera нашел и сделал,а вот Free не могу,помогите пожалуйста.
    Код (PHP):
    1. <?
    2. Header("Content-Type: text/html;charset=UTF-8");
    3.  
    4. require_once($_SERVER['DOCUMENT_ROOT']."/data/conn_file.php");
    5. require_once($_SERVER['DOCUMENT_ROOT']."/data/func.php");
    6.  
    7.  
    8. if (isset($_POST['m_operation_id']) && isset($_POST['m_sign']))
    9. {
    10.     $m_key = '..............................';
    11.     $arHash = array($_POST['m_operation_id'],
    12.             $_POST['m_operation_ps'],
    13.             $_POST['m_operation_date'],
    14.             $_POST['m_operation_pay_date'],
    15.             $_POST['m_shop'],
    16.             $_POST['m_orderid'],
    17.             $_POST['m_amount'],
    18.             $_POST['m_curr'],
    19.             $_POST['m_desc'],
    20.             $_POST['m_status'],
    21.             $m_key);
    22.     $sign_hash = strtoupper(hash('sha256', implode(':', $arHash)));
    23.     if ($_POST['m_sign'] == $sign_hash && $_POST['m_status'] == 'success')
    24.     {
    25.  
    26.             $get_info    = mysql_query("SELECT * FROM tb_enter WHERE id = ".intval($_POST['m_orderid'])." AND status != 2 LIMIT 1");
    27.             $row        = mysql_fetch_array($get_info);
    28.  
    29.             $date = date("d.m.Y");
    30.  
    31.             if($row['summa'] == $_POST['m_amount']) {
    32.                 mysql_query('UPDATE tb_users SET money = money + '.$row['summa'].' WHERE id = "'.$row['user_id'].'" LIMIT 1');
    33.                 mysql_query("UPDATE tb_enter SET status = 2, purse = 'PAYEER' WHERE id = ".intval($_POST['m_orderid'])." LIMIT 1");
    34.             }
    35.  
    36.         echo $_POST['m_orderid']."|success";
    37.         exit();
    38.  
    39.     } else {
    40.         echo $_POST['m_orderid']."|error";
    41.     }
    42. }
    43. ?>


    нашел ток вот этот
    Код (PHP):
    1. Пример обработчика платежа
    2.  
    3. $merchant_id = '177';
    4. $merchant_secret = 'supersecret';
    5.  
    6. function getIP() {
    7. if(isset($_SERVER['HTTP_X_REAL_IP'])) return $_SERVER['HTTP_X_REAL_IP'];
    8.    return $_SERVER['REMOTE_ADDR'];
    9. }
    10. if (!in_array(getIP(), array('5.9.72.245', '5.9.72.243', '5.9.29.230'))) {
    11.     die("hacking attempt!");
    12. }
    13.  
    14. $sign = md5($merchant_id.':'.$_REQUEST['AMOUNT'].':'.$merchant_secret.':'.$_REQUEST['MERCHANT_ORDER_ID']);
    15.  
    16. if ($sign != $_REQUEST['SIGN']) {
    17.     die('wrong sign');
    18. }
    19.  
    20. //Так же, рекомендуется добавить проверку на сумму платежа и не была ли эта заявка уже оплачена или отменена
    21. //Оплата прошла успешно, можно проводить операцию.
    22.  
    23. die('YES');
     
  2. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Обратиться к техподдержке Фрикассы не пробовали? :)
     
  3. Андрей12

    Андрей12 Новичок

    С нами с:
    18 фев 2015
    Сообщения:
    131
    Симпатии:
    0
    пробовал,они и дали мне 2-ой код который я написал,ток ничего не понимаю как сделать.


    $get_info = mysql_query("SELECT * FROM tb_enter WHERE id = ".intval($_POST['m_orderid'])." AND status != 2 LIMIT 1");
    $row = mysql_fetch_array($get_info);

    $date = date("d.m.Y");

    if($row['summa'] == $_POST['m_amount']) {
    mysql_query('UPDATE tb_users SET money = money + '.$row['summa'].' WHERE id = "'.$row['user_id'].'" LIMIT 1');
    mysql_query("UPDATE tb_enter SET status = 2, purse = 'PAYEER' WHERE id = ".intval($_POST['m_orderid'])." LIMIT 1");
    }



    мне надо вот эту штуку куда то засунуть чтоб деньги зачислились после оплаты,но куда только ен сувал) а вот когда форму человек записывает и переходит на сайт фрикассы в базе появляется данные что он пытается пополнить,а вот после оплаты в базе данных должно быть под столбом status цыфра 2 чтобы деньги зачислились а он не прописывает ее) значит дело в этой ерунде.
     
  4. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Как сделать что? Что там конкретно не понятно? Может лучше нанять тогда того, кто поймет?
     
  5. Андрей12

    Андрей12 Новичок

    С нами с:
    18 фев 2015
    Сообщения:
    131
    Симпатии:
    0
    логично,но я хочу сам научится)
     
  6. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Чему? Программированию? Тогда начинать нужно не с этого. Так вы ничего никогда не поймете же.
     
  7. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв