Задать вопрос
  • Как защитить приложение на js+php пока не заплатили?

    @humoured
    Вы всё на свете найдёте в коробке с карандашами
    Стопроцентная предоплата — хороший вариант для единичного клиента, но если речь идёт про продажу продукта в качестве услуги, то стоит подумать немного наперёд.

    Самый распространённый подход сейчас —SaaS, продажа доступа к собственной инфраструктуре. Исходники и их исполнение остаются на вашей стороне, а вы берёте месячную/годовую/единоразовую плату за доступ к сервису.
    Можно рассмотреть кодирование исходников в ioncube или компилирование собственного кода в расширение php из cpp (либо использование суррогатов вроде Zephir), но всё это можно взломать/обойти/пропатчить.

    Меняйте подход к продаже своих слуг, раз их воруют.
    Ответ написан
    1 комментарий
  • Почему некоторые блокируют "якобы плохих ботов"?

    @humoured
    Вы всё на свете найдёте в коробке с карандашами
    Блокируют, что бы исключить нагрузку на сервер. Боты могут бесконтрольно рекурсивно скачивать миллионы страниц с сервера, а толку от них конкретно вам не будет никакого.
    Если бы мотивацией бота был ещё какой-то смысл, он бы выдал себя за обычного пользователя.
    Ответ написан
    Комментировать
  • Как правильно реализовать получение информации на стороне сервера для дальнейней обработки?

    @humoured
    Вы всё на свете найдёте в коробке с карандашами
    Если формат входящих данных изменить нельзя (а стоило бы), то можно использовать простой лайфхак: передать в json-парсер данные в виде массива.
    Если у нас были данные вида
    {object}, {object}, {object}
    достаточно обернуть их в квадратные скобки:
    [{object}, {object}, {object}]
    Json-парсер должен будет вернуть массив с данными.
    Ответ написан
    Комментировать
  • Как изменить часть текста в тех полях, где есть нужное значение?

    @humoured
    Вы всё на свете найдёте в коробке с карандашами
    Если вёрстка такая же простая, как и в примере, то копайте в сторону регулярных выражений. Если вёрстка более сложная, может содержать несколько одинаковых тегов, вложенных один в другой, то придётся обрабатывать данные за пределами базы данных. Способ обработки будет зависеть уже от используемого языка программирования.
    Ответ написан
    Комментировать
  • Как можно конвертировать из React в Html?

    @humoured
    Вы всё на свете найдёте в коробке с карандашами
    К сожалению, с кодом приложения на Реакте не получится работать привычными разбором html-кода, полученного от сервера. Рабочим вариантом будет использование Chrome headless решений.
    Ответ написан
    Комментировать
  • На какой карте лучше такое сделать?

    @humoured
    Вы всё на свете найдёте в коробке с карандашами
    Карта Яндекса, бесспорно, хороша.
    Однако если стоит задача показывать исключительно карту крупных городов со статическими точками, без построения маршрутов, зон доставок, учёта пробок и всего такого прочего, то стоит посмотреть в сторону OSM. На основе этих карт есть несколько достойных библиотек, например OpenLayers или излишне политизированный Leaflet.
    Ответ написан
  • Возможно ли использовать array_map с обычной функцией?

    @humoured
    Вы всё на свете найдёте в коробке с карандашами
    Конкретно этот синтаксис предполагает передачу анонимной функции. Если хочется и именованную функцию объявить и в качестве callback'а её отправить, то следует отдельно объявить функцию и отдельно на неё сослаться:
    function xep($str){
    
    }
    $str = [1,2,3];
    array_map('xep' ,$str);
    Ответ написан
    Комментировать
  • Как можно управлять запущенной функцией и данными в ней?

    @humoured
    Вы всё на свете найдёте в коробке с карандашами
    Самый простой вариант сделать подобное управление в php — использовать внешние флаги. Вариантов много, например, можно взять Redis или Memcache: один процесс (управляющий) ставит флаг cron:check:row123:pause = 1, второй процесс (обрабатывающий) в своём цикле считывает флаг. Аналогично можно сделать флаг cron:check:stop = 1 и остановить обработку вообще.
    Ответ написан
    2 комментария