1. 游客, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

Любая версия Auto-donate [free-kassa.ru]

本贴由 salitypw2015-04-03 发布. 版块名称: PW Разработки

  1. TopicStarter Overlay

    salitypw Программист Пользователи

    帖子:
    673
    支持:
    460
    性别:
    Репутация:
    8
    Команда:
    Easy Game Protection
    Страна:
    Japan Japan
    Собственно как видно с названия темы - ничего сверхъестественного , простенькая система автоматического приема платежей для PW
    на базе шлюза http://free-kassa.ru/

    1) Распаковываем архив.

    2) Открываем src/vendor/Mvcbox/Database/configs/database.conf.php и указываете ваши данные для подключения к базе:
    [​IMG]

    Правим конфиги:
    3) app/Models/Config/FreeKassa.php
    [​IMG]
    SHOP_ID - ID вашего магазина в системе free-kassa
    SECRET_WORD, SECRET_WORD_2, ACCESS_KEY - придумайте секретные значения.
    API_URL - оставить как есть

    4) app/Models/Config/Etc.php
    [​IMG]
    Думаю, что тут все понятно.

    5) Заливаем файлы на WEB сервер той серверной машины, на которой стоит сам игровой сервер.

    Далее открываем страницу: http://[IP or Host]/index.php/main/links/ и видим примерно такое:
    [​IMG]

    На этой странице сгенерированы данные для конфигурации вашего магазина:

    [​IMG]

    6) ВНИМАНИЕ!!! После того, как Вы закончили настройку - ОБЯЗАТЕЛЬНО откройте app/Controllers/Main.php и раскомментируйте строку 52 .
    Из этого:
    [​IMG]
    Сделайте вот это:
    [​IMG]


    В итоге получается такая простенькая страничка:

    [​IMG]

    Теперь на счет того, куда все это сохраняется:

    1) Таблица autodonate_users_data :
    [​IMG]
    В этой таблице хранится текущий баланс игрока.
    user_id - это ID аккаунта игрока в таблице users
    amount
    - текущий баланс игрока (ВНИМАНИЕ!!! Баланс хранится в копейках, а не рублях)

    2) Таблица autodonate_recharge_history :
    [​IMG]
    В этой таблице хранится история пополнений баланса.
    user_id - это ID аккаунта игрока в таблице users
    amount
    - сумма пополнения баланса (ВНИМАНИЕ!!! Сумма хранится в копейках, а не рублях)
    recharge_date - Дата пополнения баланса (timestamp)

    Информацию с этих таблиц Вы уже будете использовать в своих скриптах.

    Вот и все, вроде ничего не забыл :)

    P. S. Клиент-Серверный вариант не было смысла делать, так как шаровый авто-донат может понадобиться лишь тем, у кого нет денег на платные ЛК, а соответственно нет и денег на защиту сервера. То есть спалить реальный IP машины не составляет труда.

    License: MIT License

    附件文件:

    Последнее редактирование: 2015-04-03
    已获得NetSpirit, MorzE, bradis另外5人的支持.
  2. bradis Пользователи

    帖子:
    302
    支持:
    32
    性别:
    Репутация:
    0
    Команда:
    VioTeam
    тонкий намёк на меня:D про нет денег на лк:D
    такс маленький вопрос,т.е. здесь все сделано.но не реализована награда за пополнение т.е вывод голды на персонажа после пополнеия,Я прав?
  3. TopicStarter Overlay

    salitypw Программист Пользователи

    帖子:
    673
    支持:
    460
    性别:
    Репутация:
    8
    Команда:
    Easy Game Protection
    Страна:
    Japan Japan
    Конечно, что не реализовано. Это универсальное решение для всех серверов, которое позволяет только принимать деньги и сохранять все это в необходимые таблицы. А дальше уже администраторы серверов используют эту информацию так, как им необходимо.
    已获得bradis的支持.
  4. alekill Пользователи

    帖子:
    166
    支持:
    27
    Репутация:
    0
    Команда:
    GreenCat
    Есть тут кстати те, кого WayToPay кинул?
    已获得romchkySneeska的支持.
  5. JonMagon Программист Пользователи Open Source Contributor

    帖子:
    805
    支持:
    809
    性别:
    Репутация:
    5
    Страна:
    Germany Germany
    Хрень очередная. Громоздкий велосипед, у которого руль к спицам прикреплен.
  6. NEO I Old school Пользователи

    帖子:
    117
    支持:
    43
    性别:
    Репутация:
    0
    Знаю чувака, почти на 30к его кинули, меня на 100руб :D Вовремя на UnitPay перешёл)
  7. dpakon1 Пользователи

    帖子:
    101
    支持:
    14
    性别:
    Репутация:
    0
    Команда:
    myself
    Каким образом? О-о
  8. pdev Команда форума Администратор Программист Open Source Contributor

    帖子:
    1,409
    支持:
    1,407
    性别:
    Репутация:
    7
    Команда:
    Indy
    Страна:
    Turkey Turkey
    Просьба, OpenSource разработки заливать на bitbucket.org или github.com.
    Будьте мужиками.
  9. wsok Программист Пользователи

    帖子:
    606
    支持:
    173
    性别:
    Репутация:
    3
    ну юнит пай тоже не без греха, посчитают, что твой проект мало активен и заблочат с концами.
  10. vieraw Пользователи

    帖子:
    54
    支持:
    27
    Репутация:
    0
    Согласен для данной задачи использовать framework не самая лучшая идея. Причем не документированный framework в котором кроме автора никто не разбирается.
    Ну и то, что я увидел бегло глянув код.
    Переход по ссылке http://auto-donate.dev/index.php/main/index/ выкинет 404.
    В классе Foundation, все методы protected. Зачем? Там же в методе __get на строке 638, лучше было бы использовать method_exists. В __get стоит проверять существует ли свойство или нет, иначе php генерирует Notice, естественно о будет показан, если включено отображение ошибок. Так же позволять устанавливать любое свойство через __set, не есть хорошая идея.
    Конфиги в различных папках, причем их прилично.
    В Http::request, функция curl_setopt будет вызвана минимум 7 раз, если не ошибаюсь. Для таких случаев есть: curl_setopt_array.
    Во многих файлах используется пространство имен MvcBox, которого у тебя нет. Зато есть одноименный класс MvcBox. Сомневаюсь, что ты через use MvcBox подключаешь этот класса, т.к. его ты везде вызываешь из глобального пространства.
    Конструктор класс не может ничего возвращать.
    Структура проекта оставляет желать лучшего. Конфиги, как я уже говорил разбросаны. Часть файлов, которые я бы отнес к framework'у в папке bootstrap.
    PHPDoc не самым лучшим образом сделаны, у меня IDE ругалась не переставая. IDE много на что еще ругается, но не вижу смысла все тут описывать и не на все стоит обращать внимание.
    И напоследок анализ файла Database.php:
    [​IMG]
    P.S. Это не упреки, а просто направления для работы.
    已获得JonMagonStranger的支持.
  11. TopicStarter Overlay

    salitypw Программист Пользователи

    帖子:
    673
    支持:
    460
    性别:
    Репутация:
    8
    Команда:
    Easy Game Protection
    Страна:
    Japan Japan
    Там часть legacy кода родом с середины 2012-го года, который я не стал трогать, чтобы не ламать обратную совместимость с некоторыми старыми проектами. Да и фреймворком я бы свой велосипед не назвал, ибо функционал беден. Скорее всего это простенький MVC каркас (в принципе примерно так и переводится название) с базовым набором библиотек, которые избавляют от основных рутинных задач. Там частенько встречаются куски кода, которые противоречат друг другу, ибо тогда было время активного изучения пыха и каждый день узнавалось что-то новое и велосипед писался дальше уже с учетом полученных новых знаний.
    Но тогда я допустил ошибку - взял себе за образец CodeIgniter (с него же был взят и стиль PHPDoc, и многое другое).
    Все еще иногда его применяю, когда Laravel нет смысла использовать, но и вручную все писать тоже не охота.

    Там все так и задумано, чтобы можно было менять только некоторые параметры запроса, все остальное будет взято с конфига. Ниже по коду есть Extended HTTP request - Http::eRequest , который устанавливает опции через curl_setopt_array()

    Чтобы этот класс только наследовался.

    Уменьшить зависимость между компонентами. Чтобы можно было "безболезненно" вырезать компонент, или же использовать его отдельно от велосипеда без изменений (или с их минимальным количеством).

    __set используется только в activeRecord (и то при создании сущности) и в Io (для успрощения работы с некоторыми методами).


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


    Я знаю, у меня конструкторы ничего и не возвращают, return; (или иногда встречается return null; ) использую для прерывания работы конструктора (когда это необходимо).


    В bootstrap я вынес то, что (на мой взгляд) можно отнести к так называемым "Побочным действиям" (PSR-1). Некоторые компоненты по сути и не являются побочными действиями, но я предпочел все равно вынести их в bootstrap
    Последнее редактирование: 2015-04-05
  12. vieraw Пользователи

    帖子:
    54
    支持:
    27
    Репутация:
    0
    Я про строку 102 в Io где ты позволяешь установить любое свойство, даже те, которых нет. И про строку 75, где ты позволяешь, так же, получить любое свойство.

    Какой в этом смысл? Вызвать метод из вне ты все равно позволяешь используя __get, но напрямую вызвать нет. Я к тому, что магия __get дает дополнительную нагрузку при вызове, но в данном случаи не несет никакой пользы.

    Бесполезная затея. Тот же модуль работы с базой зависит от модуля Caching. Данная идея только принесет тебе проблемы в дальнейшем. Например, у тебя конфиги вшиты в сами модули и для того, чтобы сделать два проекта на твоем framework'е необходимо его скопировать. Т.е. дважды использовать его не получится т.к. у тебя настройки всего приложения зависят от настроек framework'а и отдельно от него не меняются.

    Ну и как я говорил еще много чего есть, если смотреть глубже.
  13. TopicStarter Overlay

    salitypw Программист Пользователи

    帖子:
    673
    支持:
    460
    性别:
    Репутация:
    8
    Команда:
    Easy Game Protection
    Страна:
    Japan Japan
    Все зависимости проходят через MvcBox::getInstance (правда встречаются случаи, где другие компоненты используются в обход MvcBox::getInstance, что я все забываю исправить) , которые потом легко найти.


    Изначально так и задумывалось, что можно создать только один проект. Была мысль переделать, но так и не дошли руки.

    Так же была идея полностью все переписать, не в этом нет смысла, так как есть уже все готовое оттестированые решения, на пример те же - Laravel, Zend, Symfony + кучи бандлов , что позволяет решать 99,9% всех задач. Так же Composer'ом можно подтянуть сторонние библиотеки.
    Последнее редактирование: 2015-04-09
  14. Димка11 Пользователи

    帖子:
    234
    支持:
    32
    性别:
    Репутация:
    1
    Страна:
    Russian Federation Russian Federation
    пере залейте картинки пожалуйста
  15. st1vka Пользователи

    帖子:
    1
    支持:
    0
    性别:
    Репутация:
    0
    Команда:
    Advise RolePlay
    Страна:
    Russian Federation Russian Federation
    Возможно связаться со создателем темы? Нужно сделать авто-донат, но картинок не видно.
Черновик сохранён Черновик удалён
Similar Threads
  1. k0nst
    回复:
    4
    浏览:
    3,277
  2. mr.Slink
    回复:
    0
    浏览:
    1,929
  3. New-X
    回复:
    6
    浏览:
    2,159
  4. bleR
    回复:
    0
    浏览:
    1,612
  5. LiptoN[Triton]
    回复:
    11
    浏览:
    2,271
正在加载...

分享此页面