• Реклама: 💰 Пополни свой портфель с минимальной комиссией на Transfer24.pro
  • Добро пожаловать на инвестиционный форум!

    Во всем многообразии инвестиций трудно разобраться. MMGP станет вашим надежным помощником и путеводителем в мире инвестиций. Только самые последние тренды, передовые технологии и новые возможности. 400 тысяч пользователей уже выбрали нас. Самые актуальные новости, проверенные стратегии и способы заработка. Сюда люди приходят поделиться своим опытом, найти и обсудить новые перспективы. 16 миллионов сообщений, оставленных нашими пользователями, содержат их бесценный опыт и знания. Присоединяйтесь и вы!

    Впрочем, для начала надо зарегистрироваться!
  • 🐑 Моисей водил бесплатно. А мы платим, хотя тоже планируем работать 40 лет! Принимай участие в партнеской программе MMGP
  • 📝 Знаешь буквы и умеешь их компоновать? Платим. Дорого. Бессрочная акция от MMGP: "ОПЛАТА ЗА СООБЩЕНИЯ"

Прием платежей LR с получением автоматического ответа

Navrus

Новичок
Регистрация
21.03.2010
Сообщения
194
Реакции
26
Поинты
0.000
Здравствуйте! У кого-нибудь есть модуль приема платежей через SCI, причем чтобы после успешного платежа получать ответ от сервера Liberty Reserve, именно на php? Тот, что на официальном сайте - неполная версия. То есть там платеж можно только принять, но сделать так, чтобы получить переменную о сумме платежа после его совершения обратно в скрипт - нет. Непонятно куда сервер возвращает данные, в status.php или success.php, и какие это данные. Также неизвестно, какой метод где использовать, GET или POST. В официальной версии SCI там результаты в виде текста передаются на email, а надо - в виде переменной, причем в php форму. Кто с этим сталкивался, или у кого есть готовое решение, выложите плиз...
 

Senator2

ТОП-МАСТЕР
Регистрация
25.09.2007
Сообщения
7,027
Реакции
489
Поинты
0.000
Здравствуйте! У кого-нибудь есть модуль приема платежей через SCI, причем чтобы после успешного платежа получать ответ от сервера Liberty Reserve, именно на php? Тот, что на официальном сайте - неполная версия. То есть там платеж можно только принять, но сделать так, чтобы получить переменную о сумме платежа после его совершения обратно в скрипт - нет. Непонятно куда сервер возвращает данные, в status.php или success.php, и какие это данные. Также неизвестно, какой метод где использовать, GET или POST. В официальной версии SCI там результаты в виде текста передаются на email, а надо - в виде переменной, причем в php форму. Кто с этим сталкивался, или у кого есть готовое решение, выложите плиз...

Да вполне там нормальная версия вроде...
Смотреть Вам нужно на status.php - вся дальнейшая обработка должна происходить в нём...
Если Вы внимательно посмотрите на него, то в самом верху (там где формируется строка для проверки) увидите переменные, из которых эта строка собственно и формируется.
В них Вы увидите и нужное Вам поле
PHP:
$ _REQUEST["lr_amnt"]
- это и есть сумма платежа.
Вам нужно то всего вместо отправки письма сделать свою обработку - т.е. те действия, которые Вы хотите сделать после удачного завершения платежа...

Если всё-же будут трудности - пишите - дам небольшой пример...
 

Navrus

Новичок
Регистрация
21.03.2010
Сообщения
194
Реакции
26
Поинты
0.000
Хотел бы я, чтобы все было бы так просто. В status.php надо получить переменную lr_amnt, а потом он проверяет какой-то там код sha256 (это типа подписи Md5). И он видно не совпадает, и непонтно с чем сравнивать, хотелось бы попроще, обойтись без него. Потом там есть подпапка include, я ее установил, прописал, все равно не пашет. Хотелось бы пример конечно, что писать в status.php, и как потом из lr_amnt получить сумму и загнать ее в переменную, потому что дальше там уже идет запись в MySql. А до самой записи дело не доходит, вот в чем сложность... И непонятно, цифра приходит или нет...
 

Senator2

ТОП-МАСТЕР
Регистрация
25.09.2007
Сообщения
7,027
Реакции
489
Поинты
0.000
Хотел бы я, чтобы все было бы так просто. В status.php надо получить переменную lr_amnt, а потом он проверяет какой-то там код sha256 (это типа подписи Md5). И он видно не совпадает, и непонтно с чем сравнивать, хотелось бы попроще, обойтись без него. Потом там есть подпапка include, я ее установил, прописал, все равно не пашет. Хотелось бы пример конечно, что писать в status.php, и как потом из lr_amnt получить сумму и загнать ее в переменную, потому что дальше там уже идет запись в MySql. А до самой записи дело не доходит, вот в чем сложность... И непонятно, цифра приходит или нет...

Я немного Вас не понимаю...
1. Проверка та что там делается - она нужна... Без неё делать нельзя - а то будет всё срабатывать и без оплаты...
Эта проверка как раз и проверяет - правильно ли прошел платеж, или пользователь это дело отменил...
Так что - не дурите... Проверку нужно оставлять...
2. Теперь насчет переменной...
Я же Вам написал переменную, в которой хранится сумма платежа
PHP:
$ _REQUEST["lr_amnt"]
её и нужно использовать для получения суммы... Не просто lr_amnt, а именно так как я написал (только после знака $ нужно убрать пробел)...

И еще - а как Вы проверяете ?
Если просто запустите в браузере status.php - то конечно же у Вас ничего не получится...
Для проверки - нужно именно проводить оплату через SCI интерфейс Liberty. Иначе - никак...

Пример файла status.php (в приведенном скрипте нужно убрать пробел после знаков $)
PHP:
<?
$ conf_merchantAccountNumber = 'Ваш счет Liberty';
$ conf_merchantStoreName = 'Название MerchantStore';
$ conf_merchantSecurityWord = 'Пароль для этого MerchantStore';
// Сформируем строку, которую будем хешировать для проверки
$ str =
  $ _REQUEST["lr_paidto"].":".
  $ _REQUEST["lr_paidby"].":".
  stripslashes($ _REQUEST["lr_store"]).":".
  $ _REQUEST["lr_amnt"].":".
  $ _REQUEST["lr_transfer"].":".
  $ _REQUEST["lr_currency"].":".
  ;

// Вычислим хеш строки
$ hash = strtoupper(bin2hex(mhash(MHASH_SHA256, )));

// Проверим то что у нас получилось с тем, что прислала нам Liberty
if (isset($ _REQUEST["lr_paidto"]) && $ _REQUEST["lr_paidto"] == strtoupper($ conf_merchantAccountNumber) &&
    isset($ _REQUEST["lr_store"]) && stripslashes($ _REQUEST["lr_store"]) ==  $ conf_merchantStoreName &&
    isset($ _REQUEST["lr_encrypted"]) && $ _REQUEST["lr_encrypted"] == $ hash)
{
	// Все совпадает - значит платеж проведен успешно
        // Здесь делаем то, что Вам нужно делать при успешной оплате
}
else
{
	// Что-то не совпало - значит платеж не прошел
}
?>
 
Последнее редактирование:

Navrus

Новичок
Регистрация
21.03.2010
Сообщения
194
Реакции
26
Поинты
0.000
У меня все так и есть, а дальше-то что? Люди платеж делают, деньги мне в кошелек приходят, а скрипт не срабатывает. До записи в базу даже дело не доходит. Если бы срабатывало, в базу бы хотя бы пустая строка записывалась бы. Дальше-то самое интересное, надо получить данные, и записать их в базу MySql. Вот такая строка будет работать? $in_summ=$_REQUEST["lr_amnt"]; а потом mysql_query("update users set cash=cash+'$in_summ' where login='$player'");
 

Senator2

ТОП-МАСТЕР
Регистрация
25.09.2007
Сообщения
7,027
Реакции
489
Поинты
0.000
Да...
Такое должно сработать...
Видать Вы чего-то не донастроили в своём аккаунте Liberty...
Вы всё прописали в настройках Store (в своём аккаунте) ?
- Сделайте скриншот настроек (пароль можете замазать, или потом просто поменяете) - и покажите его здесь...
- ну и можете свой файлик status.php приаттачить - глянем на него...

И еще - Вы делали так как у них в примере - с папкой include ?
Если да - то в файле config.php поменяли данные на свои ?
 

Navrus

Новичок
Регистрация
21.03.2010
Сообщения
194
Реакции
26
Поинты
0.000

webog

Новичок
Регистрация
05.12.2010
Сообщения
185
Реакции
74
Поинты
0.000
Регистрация
19.02.2013
Сообщения
1
Реакции
0
Поинты
0.000
Parse error: syntax error, unexpected ';'

PHP:
$str =
  $_REQUEST["lr_paidto"].":".
  $_REQUEST["lr_paidby"].":".
  stripslashes($_REQUEST["lr_store"]).":".
  $_REQUEST["lr_amnt"].":".
  $_REQUEST["lr_transfer"].":".
  $_REQUEST["lr_currency"].":".
Ругается сюда ->  ;

ясен пень что будет ругаться... $ _REQUEST["lr_currency"].":". -> точка в конце строки лишняя, парсер ждет продолжения, а вы ему говорите что все закончилось :q-nono:
 
Сверху Снизу