DEST

Подключаем автодонат с помощью FreeKassa.ru

35 posts in this topic

Всем привет! Многие видели урок, как подключить систему доната с unitpay, однако, уже многие знают, что там требуют персональный аттестат WebMoney. Не у каждого данный аттестат есть. Если в ближайшем будущем у вас его не предвидится, можно использовать данную систему. 

Итак, давайте приступим. Сразу скажу, что данная система подойдет не только для CRMP, но и для SAMP соответственно тоже. 

Переходим на сайт фрикассы, скачиваем модуль для SAMP. Переходим по этой ссылке.

После того как скачали, читаем инструкцию от модулей, которая расположена внутри. 

Впринципе, там все ясно и понятно расписано. 


В связи с обновлением модуля, необходимость в ручном методе обработки пропала, поэтому старый метод взят под спойлер. 

ОСНОВНОЙ (НОВЫЙ) МЕТОД: 

Где-то в середине настроек видим такие: 

// Таблица начисления товара, например `users`
const TABLE_ACCOUNT = '';
// Название поля из таблицы начисления товара по которому производится поиск аккаунта/счета, например `email`
const TABLE_ACCOUNT_NAME = '';
// Название поля из таблицы начисления товара которое будет увеличено на колличево оплаченого товара, например `sum`, `donate`
const TABLE_ACCOUNT_DONATE= '';

Заполняем их, как указано и все. Донат настроен. Платежи автоматически будут зачисляться игроку на аккаунт. 

Пример

// Таблица начисления товара, например `users`
const TABLE_ACCOUNT = 'accounts';
// Название поля из таблицы начисления товара по которому производится поиск аккаунта/счета, например `email`
const TABLE_ACCOUNT_NAME = 'name';
// Название поля из таблицы начисления товара которое будет увеличено на колличево оплаченого товара, например `sum`, `donate`
const TABLE_ACCOUNT_DONATE= 'pDonate';

 

Если вы хотите обрабатывать платежи вручную (как описано в уроке), то сделайте следующее. 

Зайдите в файл config.php и строки TABLE_ACCOUNT, TABLE_ACCOUNT_NAME. TABLE_ACCOUNT_DONATE оставьте пустыми, т.е.:
 

// Таблица начисления товара, например `users`
const TABLE_ACCOUNT = '';
// Название поля из таблицы начисления товара по которому производится поиск аккаунта/счета, например `email`
const TABLE_ACCOUNT_NAME = '';
// Название поля из таблицы начисления товара которое будет увеличено на колличево оплаченого товара, например `sum`, `donate`
const TABLE_ACCOUNT_DONATE= '';

Далее, в OnPlayerConnect добавляем код (проверяем платежей, если они поступили). При условии, что вы используете версию mysql r-39-2. 

new name[24];
GetPlayerName(playerid, name, sizeof(name));
new query[145];
format(query, sizeof(query), "SELECT * FROM `freekassa_payments` WHERE `account` = '%s' AND `status` = '0' LIMIT 1", name);
mysql_function_query(ид_подключения_к_базе, query, true, "CheckFreeKassa", "is", playerid, name);

В конец мода вставляем проверку доната

forward CheckFreeKassa(playerid, name[]);
public CheckFreeKassa(playerid, name[])
{
    new rows, fields, temp[15], query[256], donatep;
    cache_get_data(rows, fields);
    if(rows)
    {
        new strtime[64],Year, Month, Day,hour,minuite,second;
        gettime(hour,minuite,second), getdate(Year, Month, Day);
        format(strtime,sizeof(strtime),"%02d-%02d-%02d %02d:%02d:%02d",Year, Month, Day,hour,minuite,second);
        cache_get_field_content(0, "sum", temp), Переменная_донат_очков += floatround(temp, floatround_round); // округляем дробное число по математическим правилам
        format(query, sizeof(query), "UPDATE `freekassa_payments` SET `status` = '1', `dateComplete` = '%s' WHERE `account` = '%s' AND `status` = '0' LIMIT 1",strtime, name);
        mysql_function_query(ид_подключения_к_базе, query, false, "", "");
    }
    else
    {
        SendClientMessage(playerid, COLOR_WARNING, "Новых пополнений на аккаунт не найдено!");
    }
    return true;
}

С этим способом вы можете подключить систему доната даже, если у вас используется mxINI. Таблицу все-равно использовать требуется, однако только для донатов, остальное можете хранить на mxINI. 

Автор урока (старый метод): Vlad_Trifonov. 

Автор основного, нового метода: Freekassa

ВНИМАНИЕ! За работу сервиса FreeKassa.ru, а также его дочерних сервисов, ни я, ни администрация портала не несет НИКАКОЙ ответственности. Все материалы изложены в ознакомительных целях и не являются призывом к действию. 

Обязательно указывайте авторство при копировании на другие порталы / источники. 

Share this post


Link to post
Share on other sites

Отличный урок.

 

Share this post


Link to post
Share on other sites

Спасибо

Share this post


Link to post
Share on other sites

Какую именно нужна база Mysql или касса? Мне просто выдаёт ошибку с точками.

Share this post


Link to post
Share on other sites

@THEMOD_YT урок написан под mySQL r 39, касса - фрикасса. В принципе, если вы не хотите обрабатывать платежи вручную, вы можете автоматически их начислять в оффлайне при пополнении, указав в конфиге эти данные:
 

В 13.08.2017 в 02:27, DEST сказал:

// Таблица начисления товара, например `users` const TABLE_ACCOUNT = ''; // Название поля из таблицы начисления товара по которому производится поиск аккаунта/счета, например `email` const TABLE_ACCOUNT_NAME = ''; // Название поля из таблицы начисления товара которое будет увеличено на колличево оплаченого товара, например `sum`, `donate` const TABLE_ACCOUNT_DONATE= '';

 

Share this post


Link to post
Share on other sites

 

кхм 1. это если у меня так то

2. что нужно сюда писать?

 

Заметка от DEST , создано

Все скриншоты загружать на форум, а не через какие-то другие фотохосты.

Share this post


Link to post
Share on other sites
В 31.01.2018 в 20:13, DEST сказал:

@THEMOD_YT урок написан под mySQL r 39, касса - фрикасса. В принципе, если вы не хотите обрабатывать платежи вручную, вы можете автоматически их начислять в оффлайне при пополнении, указав в конфиге эти данные:
 

 

а как заливать

Share this post


Link to post
Share on other sites

@Алмас на втором скрине указать: 

первые три настройки брать из личного кабинета фрикассы

4 оставить без изменений

5, 6, 7 взять из базы данных, таблицы с аккаунтами.

8-10 настройки базы данных

 

На первом скрине ничего не нужно делать, в этой таблице будет храниться инфа о прошедших платежах

Share this post


Link to post
Share on other sites

Тут знаешь ,что тут сумма доната ставит пополнения.Например если у тебя было 50 рублей и задонатил 20 р ,то тебе переменная ставит 20 р

Share this post


Link to post
Share on other sites

@#KING исправлено. 


Изменено основное содержание темы, в связи с обновлением модуля (p.s. хотя обновление было давно, просто руки не доходили сделать). 

Share this post


Link to post
Share on other sites

Урок хороший, но чайники не поймут.Можно было подробнее

Заметка от odosenok , создано

Где тогда Ваш "плюсик"? Поблагодарите автора, коль уж его пост оказался Вам полезен.

Share this post


Link to post
Share on other sites

Всё сделал по уроку, деньги не доходят. Что делать?

Share this post


Link to post
Share on other sites
В 12.02.2019 в 16:19, Papleet сказал:

Всё сделал по уроку, деньги не доходят. Что делать?

Тоже самое, ты исправил эту проблему? 

Share this post


Link to post
Share on other sites

@Dmitry_History Где-то в истории платежей в фрикассе есть раздел "Логи" или что-то в этом роде. Зайдите туда и прикрепите их сюда. Обратите внимание, что логи могут содержать персональную информацию, ее лучше изменить или вовсе удалить. 

Share this post


Link to post
Share on other sites

Здравствуйте, всё настроил но игровая валюта не приходит на аккаунт. Даже в таблице freekassa_payments нет записей. Как это решается?

Share this post


Link to post
Share on other sites

@Mark212 смотрите логи в самой фрикассе. 

Share this post


Link to post
Share on other sites

@DEST Вот такой лог:

Ответ:

HTTP/1.1 500 Internal Server Error
Server: nginx
Date: Tue, 23 Jul 2019 14:27:54 GMT
Content-Type: text/html; charset=UTF-8
Content-Length: 0
Connection: keep-alive
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff

Share this post


Link to post
Share on other sites

@Mark212 значит адрес уведомления в настройках выдает ошибку 500. Если указывали https:// то попробуйте указать с http://. 

Share this post


Link to post
Share on other sites

@DEST не помогает

Share this post


Link to post
Share on other sites

@Mark212 какой вы адрес указали в получении уведомлений в настройках? 

Share this post


Link to post
Share on other sites

@Mark212 скиньте еще раз полный лог, который выдает фрикасса. 

Share this post


Link to post
Share on other sites

@DEST 

Запрос: MERCHANT_ORDER_ID=%CF%E*%EF%EE%EB%ED%E*%**%E8%E5+%F1%F7%E5%F2%E0&P_PHONE=&P_EMAIL=p*****@mail.ru&CUR_ID=1**&AMOUNT=1&MERCHANT_ID=1****0&SIGN=857****e***cb9bc****d9dcf8319b482&intid=69**6165&us_account=***k&test_payment=1

* - закрыл почту и прочее.

Ответ:

HTTP/1.1 500 Internal Server Error
Server: nginx
Date: Thu, 25 Jul 2019 11:42:42 GMT
Content-Type: text/html; charset=UTF-8
Content-Length: 0
Connection: keep-alive
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff

Share this post


Link to post
Share on other sites

@Mark212 значит вам нужно смотреть в логи ошибок php. Видимо, какая-то ошибка происходит и поэтому код 500. Можете попробовать создать файл с именем .htaccess, внутрь которого положить 

php_flag display_errors on

после выполнить еще раз тестовую оплату, и опять посмотреть в логи фрикассы, если что-то изменится, скинуть сюда. 

Share this post


Link to post
Share on other sites

@DEST Кажется что-то налаживается!!

Изменилось!

Ответ:

HTTP/1.1 200 OK
Server: nginx
Date: Thu, 25 Jul 2019 15:34:54 GMT
Content-Type: text/html; charset=UTF-8
Transfer-Encoding: chunked
Connection: keep-alive
Vary: Accept-Encoding
X-XSS-Protection: 1; mode=block
X-Content-Type-Options: nosniff
X-Server-Powered-By: Engintron

<br />
<b>Fatal error</b>:   in <b>/home/i1******/public_html/donate/lib/FreekassaModel.php</b> on line <b>19</b><br />

Edited by Mark212

Share this post


Link to post
Share on other sites

Your content will need to be approved by a moderator

Guest
You are commenting as a guest. If you have an account, please sign in.
Reply to this topic...

×   You have pasted content with formatting.   Remove formatting

  Only 75 emoticons maximum are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • NNN
      By NNN
      Поставил эту http://pawno-rus.ru/topic/1034-sistema-reporta/ систему репорта со всеми доработками, в компиляторе высвечиваются эти ошибки:
      loose indentation error 017: undefined symbol "AddMessage" warning 215: expression has no effect error 001: expected token: ";", but found "]" error 029: invalid expression, assumed zero fatal error 107: too many error messages on one line первое предупреждение из за корявости скрипта (loose indentation) а вот с остальными не знаю)
    • Leo_Carter
      By Leo_Carter
      Такая проблема то что я пишу мод с нуля и когда почти мод был готов, я решил его залить на хостинг, ну там есть подключение к mysql и всё подобное, только вот залил на хостинг, запускаю и у меня вот такие дебаги вылезают и сервер Unknown

       
      Loaded log file: "server_log.txt". ---------- SA-MP Dedicated Server ---------------------- v0.3.7-R2, (C)2005-2015 SA-MP Team [18:54:42] filterscripts = "" (string) [18:54:42] [18:54:42] Server Plugins [18:54:42] -------------- [18:54:42] Loading plugin: mysql_static.so [18:54:42] >> plugin.mysql: R39-2 successfully loaded. [18:54:42] Loaded. [18:54:42] Loading plugin: pawncmd.so [18:54:42] Pawn.CMD plugin v3.1.4 by urShadow loaded [18:54:42] Loaded. [18:54:42] Loading plugin: pawnregex.so [18:54:42] Pawn.Regex plugin v1.1 by urShadow loaded [18:54:42] Loaded. [18:54:42] Loading plugin: crashdetect.so [18:54:42] CrashDetect v4.18.1 is OK. [18:54:42] Loaded. [18:54:42] Loading plugin: streamer.so [18:54:42] *** Streamer Plugin v2.8.2 by Incognito loaded *** [18:54:42] Loaded. [18:54:42] Loading plugin: sscanf.so [18:54:42] [18:54:42] =============================== [18:54:42] sscanf plugin loaded. [18:54:42] Version: 2.8.1 [18:54:42] (c) 2012 Alex "Y_Less" Cole [18:54:42] =============================== [18:54:42] Loaded. [18:54:42] Loaded 6 plugins. [18:54:42] [18:54:42] Filterscripts [18:54:42] --------------- [18:54:42] Loaded 0 filterscripts. [18:54:42] [debug] Run time error 19: "File or function is not found" [18:54:42] [debug] cache_get_value_name [18:54:42] [debug] cache_get_value_name_int [18:54:42] [debug] Run time error 19: "File or function is not found" [18:54:42] [debug] cache_get_value_name [18:54:42] [debug] cache_get_value_name_int [18:54:42] Script[gamemodes/project.amx]: Run time error 19: "File or function is not found" [18:54:42] Number of vehicle models: 0 [18:54:42] [debug] Run time error 19: "File or function is not found" [18:54:42] [debug] cache_get_value_name [18:54:42] [debug] cache_get_value_name_int [18:54:42] [debug] Run time error 19: "File or function is not found" [18:54:42] [debug] cache_get_value_name [18:54:42] [debug] cache_get_value_name_int