MaxSite.org

Как создать свой сайт

Безопасность PHP скриптов

PHP

Сейчас вопросы безопасности полулярны и складывается впечатление, что разработчик просто обязан писать код с многочисленными проверками и защитами изначально. Но на самом деле так практически никто не делает — это достаточно сложно, поскольку на этапе разработки невероятно сложно учитывать все факторы. Разработчик в первую очередь должен решать основную поставленную задачу, а «обвеска безопасности» — это всё-таки вторичная задача.

В идеальном мире любой код должен тестироваться. Но в нашем суровом мире, код по факту тестируется уже конечным пользователем. Здесь очень важна реакция разработчика, который может оперативно исправить найденные проблемы.

Хорошая новость состоит в том, что в PHP уже есть несколько устоявшихся подходов, которые позволяют защититься от большинства уязвимостей.

Читать дальше →

Как использовать функцию mail() в PHP

PHP

Для отправки почты в PHP существует функция mail().

$to = 'user@site.com'; // кому
$subject = 'Hello, user!'; // тема письма
$message = 'How are you?'; // текст сообщения
$headers = ''; // дополнительные заголовки
 
mail($to, $subject, $message, $headers);

Сама по себе функция mail()ничего не отправляет, а лишь вызывает специальную программу (вроде sendmail, это указывается в php.ini), которой и передаёт входящие данные. А sendmail, в свою очередь уже и осуществляет физическую отправку письма.

За кажущейся простотой скрываются множество нюансов. Сложность в том, что обычное электронное письмо состоит из двух частей. Первая — это служебные заголовки, вторая — непосредственный текст сообщения. Исторически сложилось так, что мы не можем взять и просто отправить «голое» письмо, нужно ещё указать дополнительные заголовки. Если этого не сделать, то адресат не сможет его получить, поскольку почтовый сервер скорее всего заблокирует, посчитав спамом.

Читать дальше →

Обновление Albireo (Sqlite, PSR-4, PSR-3 и т.д.)

Дневник

Сегодня выложил новую версию Albireo. Особый интерес будет представлять то, что я реализовал поддержку PSR-4 (автозагрузку php-классов) и классы для работы с PDO Sqlite.

На Sqlite я сделал несколько новых страниц. Первая — это обычный лог. Он сделал почти по PSR-3 (без наследования его интерфейсов). Вторая — это произвольные опции в виде «ключ-значение». И третья, самая сложная, — это блоки, которые я планирую чуть позже портировать в MaxSite CMS.

Теперь более подробно.

Читать дальше →

Некоторые результаты последнего опроса

Дневник

Спасибо всем тем, кто не пожалел своего времени и поучаствовал в опросе. Он до сих пор открыт, желающие могут присоединиться — чем больше ответов, тем точнее будет статистика.

Поделюсь некоторыми результатами. :-)

Читать дальше →

Опрос для посетителей моего сайта

Дневник

Хочу попросить вас заполнить небольшую анкету. Вопросы касаются MaxSite CMS и шаблона MF. Я их составил таким образом, чтобы понять текущие потребности и проблемные места.

Опросник сделан на гугл-формах, но полностью анонимный. Я не собираю адреса и все ответы обезличены.

Если у вас есть 5-10 минут времени, то можете мне помочь получить важную информацию, которую я буду использовать для анализа того, как дальше развивать свои проекты. Спасибо!

Заполнить анкету

Читать дальше →

Перейти к странице: