Ответы пользователя по тегу PHP
  • Что почитать для php senior developer?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    все ниже, мое скромное личное мнение.
    сейчас нет литературы готовящей из middle -> senior
    senior - это практический опыт, полученный при решении задач различного спектра, нестандартных или малоизученных, или алгоритмически (структурно, и т.д.) сложных.
    и мидл может писать хороший код, и мидл может знать и применять паттерны.
    хороший мидл - крепкое знание правильных практик, но отсутствие большого опыта их применений, ведь в обратном случае, он уже senior.
    Ответ написан
    4 комментария
  • Существует ли серьезное ПО в сфере учета на PHP?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    конечно существует.
    аукционы, доменные регистраторы, CRM, таск менеджмент, интернет магазины - разве не оно?
    Ответ написан
    Комментировать
  • Как отключить сессии пользователей для фронтэнда в Joomla?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    configuration.php в корне сайта -
    $lifetime : длительность сессии в минутах. Определяет время, которое пройдет до отключения пользователя, который не проявляет активности.
    $session_handler : "database" или "none". Определяет обработку сессии после подключения пользователя.
    укажите session_handler: none
    Ответ написан
  • PHP extension с автовызовом при запуске процесса PHP

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    memory_get_usage(boolean real_usage);  //всегда отображала именно текущее потребление памяти
    
    <?php
    $start_mem = memory_get_usage(1);
    /// ваш код
    
    file_put_contents("mem.log", "начальное значение: " . $start_mem . "; потребляемая память в конце скрипта: " . (memory_get_usage(1) - $start_mem) );


    Насколько точно вам надо измерить потребляемую память? Приведенный выше код вполне с этим справится.
    Ответ написан
    Комментировать
  • Правильно ли обезопасил входящие данные с форм?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    Зачем, если есть
    filter_input (input_type, variable, filter, options)
    Ответ написан
    Комментировать
  • Насколько prepare и execute обеспечивают безопасность sql-запроса от инъекции?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    При подготовленных выражениях спасают от уязвимостей первого и второго порядка. Это в случае если sql не формируется динамически, а таком случае только первого.
    По простому, защищает от всех возможных sql инъекций, ddos, и прочих нагрузочных запросов.
    У нас на больших проектах(php) очистка проходит именно так, пока проблем с безопасностью не было.
    Ответ написан
  • Как передать файл на удалённый сервер при помощи PHP?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    Т.е. вы хотите сделать файловый сервер отдельно?
    Хм, если я правильно понял, то чтобы не нагружать сервер 1 (главный), Отправляйте файлы на сервер 2 (файловый) и если ответ от сервера "ок", что значит ок загрузился, отправляйте постзапрос AJAX'ом (в плане что после запроса еще запрос, а не POST, тут как вам удобно) на главный сервер с данными о том что вот загрузили файл, вот от кого и вот как называется, это к примеру.
    Ответ написан
    Комментировать
  • Какая программа лучше всего подходит для создания дизайна сайта?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    Вы ищете программу для профессионала? Или чтобы можно было формочки накидать?
    Дизайн можно и в paint'e сделать. Ищите уроки веб дизайна, если не найдете дайте знать.
    Кому как, что на что заточен. Популярнее photoshop, менее популярен illustrator, вот только как только надо векторно отобразить, ps никак это не сделает.
    Ответ написан
    1 комментарий
  • Как (чем) парсить огромный JSON-файл?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    если есть знания java, даже поверхностные, то Jackson. Других событийный парсеров не знаю, но только такими можно читать огромные файлы, т.к. типичный подход "считал и обработал" тут не подойдет.

    Впрочем, если на собственной машине, да поставить поболее ограничения на php, то file_get_contents + json_decode заберет что то около 4 гб озу, так что если ее больше, то вполне можно и по простому все сделать.
    Ответ написан
    Комментировать
  • Как перенести галерею на php с mysql?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    честно. ну даже если с англ проблемы, переводчик не даст соврать. используйте то что сказано, сам код же тоже прилагается.
    я бы просто взял за основу демку.
    Ответ написан
    Комментировать
  • Как реализовать авторизацию на Android + PHP API?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    Интересно, из каких размышлений исходили когда придумали штуку с ApiKey который генерируется 1 раз при регистрации?

    Пароль и логин не хранят на клиенте все верно. ApiKey ваш, тоже.
    Посмотрите на то как реализована авторизация у сложных систем, ведь у них везде есть токен сессии. Рекомендую и вам его использовать.

    Схема такая: на сервере, как то, где то храните токены пользователей. У токена есть время завершения сессии. например пару дней.

    При каждом запросе передается этот токен и продлеваете время сессии, на текущее время + ваш срок истечения сессии. Если передали устаревший токен, пишите в лог подозрительные данные.

    Получается такая ситуация. Пользователь активный - можно авторизоваться лишь раз.
    Пользователь заходит раз в неделю, что уж извольте авторизуйтесь. Токен само собой хранить на устройстве и желательно его зашифровать.
    Используйте HTTPS, но можно еще и такое придумать. Ключ шифрования - ваш ApiKey который знает устройство и знает сервер. В таком случае при передаче через сеть он непонятен.
    Ответ написан
  • Как создавать real-time web applications?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    Конкретное решение не смогу подсказать, но кое что все же.

    Real-time Web Application with Socket.IO, Node.js,...

    совместо с autobahn.ws/js

    сокет 1, зачем более.

    все конечно зависит от направления приложения. поэтому ничего конкретного посоветовать не смогу.

    клиент ушел в offline? сохраняйте данные локально, благо уже есть различные способы хранения. появился коннект? восстановите соединения, и все что надо (подписки, токены)
    отправьте порцию данных на сервер.

    все вроде бы не сложно.

    " Что если таких real-time событий множество ?" - а их и не бывает мало. ничего. при грамотной архитектуре и масштабируемости можно достичь обработки и Очень многих событий
    Ответ написан
  • Что изучить закоренелому PHP-шнику?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    Честно, с 1C-Bitrix можно неплохо зарабатывать, но это скучный код. Хотя конечно все зависит от заказа. Однако мне за время фриланса ничего интересного не пришло.
    Был опыт c различными cms, symfony, yii. Но, почему то меня так не зацепило.

    У самого были похожие мысли. Даже начал с дроидом работать. Но, паралельно пришлось вернуться к бекэнду, нужен был сервер для приложения ;).

    А там уже и понеслась. Захотелось быстрый сервер, освоил Phalcon, Redis, что принципе не составило труда, т.к. это имхо очень дев френдли инструменты.
    Понадобился веб клиент - решил освоить Laravel. (почему не Phalcon? дак ради интереса, а не производительности.)

    В чем проблема php? Да ни в чем. Работает себе и работает. Скажете костыльный язык? Тогда скажите, в чем именно. Медленный? как уже говорил выше, попробуйте Phalcon. А еще интересней станет участие в его разработке.

    После такого глотка свежего воздуха. Решил устроиться в контору на удаленку. Обещали интересные проекты. Не подвели ;)
    Ответ написан
    2 комментария
  • Как осуществлять подавление ошибок в PHP?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    $arr[$tables[$t]['name']]['rows'][$r]['cols'][$c]['format']['borders']['top'] - это конечно 3.14здец товарищи, но такая конструкция мне никогда не встречалась.

    Есть несколько причин:

    1) Наглядно видно что происходит в скрипте (есть ключ? нет - ставим default)
    2) Упрощает отладку в дальнейшем. "@" скрывает ВСЕ ошибки.
    3) Потому, что оператор "@" замедляет выполнение конструкции вида iffset(key) ? key : default в два раза. Даже если ошибки не возникает.

    И если уж исходить из редких ситуаций. Представьте насколько замедлится скрипт при прохождении 100000 элементов.
    Ответ написан
  • Как лучше делать проверку при добавлении данных в mysql?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    Если возникают такие вопросы, значит структура хранения прав доступа неправильно подобрана.

    Если уже ничего не исправить, да 2 вариант менее затратен. Меньше проверок.

    Но, рекомендация все же в изменении структуры хранения
    Ответ написан
  • Как можно узнать, какой php файл формирует страницу?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    в случае нечитаемого кода, и структуры папок, и если поиск ключевых слов по файлам ничего не дает.

    в самом конце index.php (при условии что в приложение 1 точка входа)
    print_r(get_included_files());
    если с именем в файле "*tpl*" или "*template*"
    ничего нету, ищем по всем подключеным файлам
    Ответ написан
    Комментировать
  • Как реализовать управление курсором мыши с сервера?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    redhelper.ru/consultant-obshenie - там, движение курсора выполняется за счет системных вызовов, например WinAPI

    двигать курсором в Js - нельзя, что с точки зрения безопасности очень правильно.
    Ответ написан
    7 комментариев
  • Безопасная загрузка файлов из web формы на сервер - как обеспечить?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    Библиотека для обработки загрузок файлов
    Ответ написан
    Комментировать
  • Как организована файловая система в PHP?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    Скорее всего вы открываете в файл в блокирующем режиме.
    Т.е. пока документ не освободится, другая запись не пройдет.

    Для точности, приложите исходник к вопросу.
    Ответ написан
  • HMVC в PHP: стоит ли использовать?

    deadbyelpy
    @deadbyelpy
    веб-шмеб
    HMVC - уже устоявшийся архитектурный паттерн, как можно ошибиться в архитектуре используя один из таких паттернов? Не понимаю.
    PHP гибкий язык и HMVC реализация не требует чего-то сверх велосипедного.

    P.S. использую в различных проектах при надобности, никогда такого не слышал.
    P.P.S. возможно вы слышали эту фразу в контексте каких-то систем?
    Ответ написан
    Комментировать