Ответы пользователя по тегу PHP
  • Как правильно реализовать оплату заказа?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    У тебя должна быть таблица выставленных счетов.
    Различные экваринги/мерчанты различаются между собой не принципиально.
    Есть те, где сперва нужно инициализировать оплату (создать счет через апи), а потом отправить пользователя по ссылке его оплачивать. В этом случае ид_оплаты присваивает платежная система.
    А есть, где сам передаешь все нужные данные через метод пост на сайт платежной системы. В этом случае практически у всех известных мне платежных систем, есть поле в котором можно передать свой идентификатор.

    У всех систем есть метод проверить статус оплаты по идентификатору. Именно его
    нужно дополнительно проверить при возврате пользователя по урлу успеха.
    Не стоит верить параметрам из гет.

    Авизо (подтверждение успешной оплаты может прилетать ассинзронно на ваш хук). В этом случае после проверки достоверности ставишь флаг оплачено в своей таблице заказов
    Ответ написан
    Комментировать
  • Проблемы с mail в php. Что я делаю не так?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Функция mail() на шаред хостингах обычно запрещена.
    Чтобы при проникновении трояна на ваш сайт не рассылали спам.
    Дальше идут варианты. Можно самому ее разрешить и настроить или нет.
    А потом головная боль, чтобы письмо хотя бы в папку спам попадало.
    Ответ написан
    Комментировать
  • Как записать синтаксис php в строку?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Eval is evil
    Настоятельно рекомендую найти другое решение для исходной задачи.
    попытки закрыть возникающую уязвимость чаще оказываются более трудоемкими чем написать сразу безопасным способом.
    Ответ написан
  • Где/Как узнать возможные для получения данные о посетителе сайте через PHP?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    $_SERVER[‘REMOTE_ADDR’]. - может быть 127.0.0.1 если перед апачем стоит nginx и его конфиги не правились.
    $_SERVER[‘HTTP_USER_AGENT’]

    $_cookie, $_session - по хорошему нужно получить согласие, что дальнейшую навигацию сайт будет отслеживать.

    про реффер кроссайтовый можно забыть 100 процентов (современные броузеры его режут)
    Ответ написан
    Комментировать
  • Как создать скрытый input для передачи технической информации на другую страницу?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    ничему из того, что приходит со стороны клиента верить нельзя.
    Куки, http заголовки и все-все можно отправить на сервер со стороны клиента.
    Из простейшего что вам подойдет - session.
    Ответ написан
    Комментировать
  • В чем может быть проблема с cURL?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    & на мысли не наталкивает ? Что такое html entity знаете ?
    В общем или в базу муссора насовали или позже обработали строку.
    Есть два подхода (крайности), к тому как заносить данные в базу данных.
    1) Все проверяем по куче условий, при любой ошибке отказываемся.
    2) Пофиг - записываем все как есть, потом будем опасное экранировать.
    Ответ написан
    9 комментариев
  • Как сделать на PHP редирект на другой сервер с сохранением домена?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    никак !!! PHP здесь не нужен.
    https://habr.com/ru/companies/cloud_mts/articles/7...
    например как это делается через DNS и потом глубже погружаетесь в тему

    https://habr.com/ru/companies/first/articles/683870/
    или через nginx раскидывать на несколько бакендов
    Ответ написан
    Комментировать
  • Как сделать ссылки на запуск установленных приложениий в телефоне/планшете?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Есть такая вещь как intent scheme
    intent:#Intent;package=имя_пакета_приложения
    но дальше нужно передать что-либо подходящее (то что прописано у приложения как допустимые данные)
    Официально поддерживаемое приложением
    точно работают кастомные урл схемы, ну а остальное сами разберетесь.
    Просто запустить я не пробывал.
    вот посмотрите примеры интеграции из броузера с приложением
    https://rawbt.ru/start.html
    p.s. это только для андроида
    Ответ написан
    Комментировать
  • Как получить запись по ID через lastInsertId сразу после вставки?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Тупой вопрос. А в таблице есть первичный ключ (primary,autoincrement) ?
    Обычно поле называют id и тип у него длинное целое
    Ответ написан
  • Не получается составить запрос к API на PHP, может кто поможет идеями?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    В конце документации внимательно читали ? Там меж строк проскакивает, что бакенд скорее всего написан на сишарпе. И как понимаю их велосипед разбора параметров отличается от PHP.
    Так, что внимательно на все их уточнения.
    Ответ написан
    Комментировать
  • Через что отправлять запросы с сервера для печати этикетки?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    qz.io и прочее, например в гугле запрос "print labels cloud"
    В общем это тема, на которой многие пытаются заработать.
    Ну и с обработкой PDF таже ситуация.

    Принтеры этикеток не умеют печатать PDF. Драйвера делают из каждой страницы картинку и посылают нужные команды ZPL, TSPL и прочих протоколов.

    Если выкинуть из цепочки формат PDF, и сразу засылать в сетевой порт 9100 нужные команды принтера, то можно обойтись поднятием VPN
    Ответ написан
    Комментировать
  • Как реализовать генератор title заголовков на PHP?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    пора расти дальше. Php вставки в HTML как я вижу освоили.
    Теперь переходите к Роутер, модель, контролер, представление (вью).
    Изучити какой нибудь фреймворк
    Ответ написан
    Комментировать
  • Есть ли необходимость или очевидные плюсы перехода на linux?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Если новичок, то для тебя пока единственое отличие в файловой системе.
    Регистр букв в имени файла важен.
    а будет ли это wamp или lamp (Apache+MySQL+PHP) пока возишься с CRUD и формошлепством фиолетово. Еще не факт, что тебе потребуются многопоточность и платформозависимые вещи.
    Потом нет нужды ставить линукс основной операционкой.
    Виртуалки и главное есть же докер.
    Ответ написан
    Комментировать
  • Как можно установить PhpMyAdmin на MacOs?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Я накатывал по статье Kristian Lumme How To Set Up Apache and PHP from Homebrew on macOS
    потом аналогично brew пакеты mysql , phpmyadmin
    Ответ написан
    Комментировать
  • Почему странно работает буферизация в PHP?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    Давайте разберемся зачем в коде используется буферезация.
    Если вы запускаете просто свой скрипт из одного файла без внешних зависимостей, то
    вызова ob_start() не было, значит и закрывать нечего.

    Почему же так часто мы видим в начале файла (единой точки входа) эту функцию первой ?
    1) А чтобы не падали скрипты из-за огрехов программистов: могут попать символы BOM (некоторые редакторы так помечают UTF файлы), затесался перенос строки после закрывающего знака вопроса больше
    2) В других случаях это костыли - нужно обработать дополнительно текст, который внешняя либа отправляет в stdout и не умеет возвращать через return.

    Поэтому такое извращение и практикуется для авварийных остановов
    if (ob_get_level()>0) ob_flush();
    Хотя правильнее через while , так как уровней вложенности может быть более одного.

    Но главное не надо так писать реальные скрипты! Вы деградируете производительность
    апача. Если установлен по дефолту, то 51 клиент увидит мертвый сервер.
    Ответ написан
    Комментировать
  • Как работает открытие сокета на сервере?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    7 лет назад собирал себе на PHP упрощенный dns сервер
    https://github.com/Muraveiko/DNS
    Ожидает входящего соединения, на любой запрос ресолвит хост в ип адрес заглушки.
    Запуск был оформлен как демон (служба) .
    Увы, сами баш скрипты и прочее за давностью лет не сохранились.
    Суть в том, что все это само стартовало при загрузке/перезагрузке сервера и можно было сделать с консоли
    аналогично всем остальным службам start/stop
    Ответ написан
    Комментировать
  • Почему я не могу получить параметр из url (api/users/параметр)?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    у вас урл кончается названием точки входа
    маска выделения uuid кончается долларом (конец строки) после цифры

    вот ваши урлы и не подходят под маску
    Ответ написан
  • Как можно реализовать запуск командной строки (скрипта) по нажатию кнопки?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    настройки безопасности в броузерах не позволяют запускать автоматом скаченный файл
    Ответ написан
    Комментировать
  • Почему из crontab не выполняется php, а если выполнить из консоли, то всё работает?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    cd сделай вначале в директорию со скриптом
    и проверь, что скрипт в консоле срабатывает от имени пользователя, которому хостинг назначен
    возможно таску придется в задания рута добавить
    Ответ написан
    1 комментарий
  • Почему не удаётся создать папку командой mkdir?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    get_current_user — Gets the name of the owner of the current PHP script
    а важно от имени кого запускается скрипт
    Ответ написан
    2 комментария