Поиск по блогу
01.05.2024
Интерпретатор PHP может работать в связке с веб-сервером в нескольких режимах. Он может быть интегрирован в веб-сервер в виде специального модуля или использоваться как отдельный сервис PHP-FPM. Аббревиатура FPM расшифровывается как Fastcgi Process Manager. Это служба, которая запускает несколько процессов…
13.03.2023
Протокол передачи файлов (FTP) был широко используемым протоколом для удаленной передачи файлов или данных в незашифрованном формате. Ему на смену пришел SFTP (Secure File Transfer Protocol), который работает по протоколу SSH на стандартном порту 22 для установления безопасного соединения.
27.02.2021
У нас есть еще проблема с временной зоной — в базе данных мы храним дату и время в UTC. Будем показывать московское время для всех не аутентифицированных пользователей, а для аутентифицированных добавим возможность задать часовой пояс в личном кабинете. Мы добавим поле timezone в таблицу БД users и будем хранить…
21.02.2021
После регистрации и подтверждения адреса почты мы должны назначить пользователю роль user, чтобы он мог добавлять посты и оставлять комментарии. Это значит, что роль user должна существовать на момент запуска блога и эту роль нельзя удалить через панель управления. Поэтому сделаем так, чтобы роль…
12.02.2021
Продолжаем работать с корзиной, которая позволяет восстановить посты блога, удаленные по ошибке. Нам надо создать контроллер, который позволит работать с удаленными постами, добавить несколько маршрутов и создать шаблон для просмотра списка удаленных постов. Кроме того, надо защитить созданные маршруты…
08.02.2021
Загрузка изображений работает, но у нас нет валидации данных формы. Кроме того, загрузить изображение может любой желающий — нет проверки прав на выполнение этого действия. Так что давайте разберемся с этими двумя проблемами. В методе ImageController::upload() создадим объект валидатора и вызовем метод fails() или passes().
26.01.2021
У нас предусмотрена возможность загрузки изображения для категории и поста блога. Имя файла изображения сохраняется в базе данных — это поле image в таблицах categories и posts. Давайте для начала просто загрузим изображение для категории и сохраним имя файла в БД — а потом напишем отдельный класс ImageSaver…
22.01.2021
Хотя у нас простой блог, но может возникнуть необходимость создания страниц сайта — что-то типа «Об этом сайте» или «Размещение рекламы». И у администратора должна быть возможность такие страницы создавать, редактировать и удалять. Давайте создадим еще одну таблицу базы данных pages…
18.01.2021
Теперь о правах и ролях пользователей. У нас уже есть форма редактирования пользователя — можем в нее добавить checkbox-ы, позволяющие выбрать права и роли. Еще один способ — создать отдельную страницу в панели управления, где можно будет назначать для пользователя права и роли.
12.01.2021
Теперь поработаем над личным кабинетом обычного пользователя. Здесь пользователь сможет увидеть все свои посты и комментарии. Еще не опубликованные посты и комментарии можно редактировать и удалять. Но после проверки администратором и публикации у пользователя больше не будет такой возможности.