Метка «PHP» - 59

Рады сообщить, что проект Tracks Flow начинает поддержку Open Source сообщества. Сегодня мы выкладываем в открытый доступ простенькую разработку — сервер хранения файлов на PHP с клиентской библиотекой на C#.

Просим строго не судить — этот проект был написан очень давно и с тех пор без особых изменений использовался в fidel.ru, а затем и в tracksflow.com. Перед выкладкой в открытый доступ мы его немножко причесали.

Этот код предназначен тем, кто хочет реализовать у себя систему хранения больших (и не очень) файлов наименьшими усилиями.
Читать полностью »

Disclamer: Это моя вторая статья на Хабре. Я программист и литературно писать статьи (даже на техническую тему) у меня пока получается плохо.

Статья написана после очередной вакансии «PHP программист», в которой в обязанностях было все: дизайн, проектирование баз данных, логика, верстка…
Читать полностью »

Отображение статусов ICQ, Jabber, Skype и MRA на сайте в произвольном виде

Бывает необходимо добавить на сайт отображение текущего сетевого статуса контактов различных сервисов обмена сообщениями. Чаще всего это можно встретить на сайтах-визитках или для отображения доступности оператора онлайн-поддержки. Можно использовать для этого официальные сервисы или неофициальные, которые, как правило, предоставляют больше возможностей по оформлению, разные темы с картинками. Но что делать, если у нас оригинальный сайт и дефолтные изображения не вписываются в его стиль? Придётся либо изобретать свой велосипед, который вряд ли будет лучше существующих, либо позаимствовать идеи из уже готовых решений и приспособить под наши нужды. Мы пойдём вторым путём.

Для начала определим наши задачи:
— по возможности использовать официальные сервисы определения статуса
— в случае их отсутствия можно прибегнуть к посторонним
— способ должен быть как можно проще, без излишков (всегда можно будет его потом расширить)
— чтобы прорисовка страницы не висла на время запроса, сделаем буфер

Рассмотрим 4 основных способа на примере ICQ, Jabber, Skype и MRA. Остальные можно сделать аналогично.
Читать полностью »

В этом посте я поделюсь опытом и проблемами, с которыми мы столкнулись при работе с платформой приложений Mamba.

Читать полностью »

Из-за того, что приходится использовать различные фреймворки, но писать, по сути, одно и то же рано или поздно начинает преследовать дежавю. Для php это особенно актуально, часто приходится как выбирать платформу под заказчика, так и допиливать уже имеющийся проект. Вроде бы, нет ничего проще — написал один раз код и таскай его за собой. Но различные API и организация файлов не дают это сделать естественным образом. Очевидное решение — организация своего «багажа» в виде классов. Тогда конкретное приложение (модуль, компонент) как раз будут связывать API фреймворка (или CMS) с вашим классом. Проблема организации файлов имеет также вроде бы очевидное решение — инклудишь нужный класс и всё. Но не зря же все активно пользуются различными фреймворками, а не пишут все с нуля — лучше сосредоточиться на новых задачах, а не думать как «подцепить» уже готовое. Посему я и написал небольшой класс, фабрику-загрузчик.
Читать полностью »

ololosha-company
В предыдущих статьях: часть 1 и часть 2 мы реализовали шаблон MVC и «набросали» простой роутер. Сегодня мы реализуем доступ в админку с помощью контроллера авторизации. Эта статья — заключительная.
Читать полностью »

ride-the-wheels
В предыдущей статье мы построили простейший MVC каркас и убедились в легкости и элегантности этого архитектурного шаблона. У нас был всего один контроллер — контроллер главной страницы с единственным действием (метод index) для отрисовки вида. В этой статье мы добавим класс для работы с маршрутами и модифицируем класс Load для разделения вида на общий для всех страниц шаблон и шаблон контента.
Читать полностью »

bicycle
Многие начинают писать проект для работы с единственной задачей, не подразумевая, что это может вырасти в многопользовательскую систему управления, ну допустим, контентом или упаси бог, производством. И всё вроде здорово и классно, всё работает, пока не начинаешь понимать, что тот код, который написан — состоит целиком и полностью из костылей и хардкода. Код перемешанный с версткой, запросами и костылями, неподдающийся иногда даже прочтению. Возникает насущная проблема: при добавлении новых фич, приходится с этим кодом очень долго и долго возиться, вспоминая «а что же там такое написано то было?» и проклинать себя в прошлом.

Вы можеть быть даже слышали о шаблонах проектирования и даже листали эти прекрасные книги:

  • Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидесс «Приемы объектно ориентированного проектирования. Паттерны проектирования»;
  • М. Фаулер «Архитектура корпоративных программных приложений».

В общем, сегодня речь пойдет о самом популярном (разве что после Singleton) шаблоне проектирования MVC и его простой реализации дабы восполнить пробел и помочь вам в рефакторинге и разрешении неприятной ситуации в которую, возможно попал ваш проект.
Читать полностью »

Однажды в далеком 2009 году я делал сайт для музыкантов. Единственным средством обратной связи на сайте была гостевая книга. Чтобы не пустить ботов, спамеров и нехороших людей, нужна была капча. Так как сайт для музыкантов, то я подумал, пусть капча тоже будет музыкальной.

То, что получилось, выглядит примерно так:
Как я делал нотную капчу

или так:
Как я делал нотную капчу
Читать полностью »

Добрый день, уважаемые читатели!
Да, вы совершенно правы — это очередной гов.. топик об Arduino.

Давеча я при помощи дядюшки Лао обзавелся этим замечательным устройством, и по сложившейся традиции не удержался выложить свой «Hello World» на хабр.
Итак — Arduino будильник, управляемый из браузера. Без использования Ethernet шилда, и ему подобных приблуд.
Если интересно — прошу под кат.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js