Дневник путешествий
Реализуйте сайт, в котором пользователь может вести путевые записи.
Продумайте структуру базы данных для хранения пользователей, поездок и заметок. Реализуйте регистрацию и авторизацию пользователей. Настройте серверную часть для работы с API. Все операции должны выполняться через AJAX-запросы без перезагрузки страницы.
Основные возможности проекта
- Регистрация и авторизация пользователей.
- Список поездок с названием, датой начала и окончания.
- Заметки для каждой поездки с датой, фото и текстом.
- Создание, редактирование и удаление заметок.
- Загрузка фотографий к заметкам.
- Все операции выполняются через AJAX без перезагрузки страницы.
Регистрация и авторизация
На сайте должна быть реализована регистрация и авторизация пользователей:
- Регистрация - форма с полями: логин, email, пароль.
- Авторизация - форма с полями: логин, пароль.
- Каждый пользователь видит только свои поездки и заметки.
Главная страница
На главной странице пользователь видит список своих поездок. Каждая поездка должна содержать:
- Название поездки (ссылка на страницу поездки).
- Дату начала.
- Дату окончания.
Также должна быть кнопка "Создать новую поездку" для добавления новой поездки в список.
Страница поездки
На странице поездки размещен список заметок, отсортированных по убыванию даты. Каждая заметка должна содержать:
- Дата.
- Фото (миниатюра).
- Первые N символов заметки (например, 50).
- Ссылка на страницу с подробным текстом.
Пользователь может создавать заметки (кнопка "Создать заметку"), редактировать и удалять их.
Страница заметки
На странице заметки находится:
- Название заметки.
- Полный текст заметки.
- Прикрепленные фотографии (галерея).
Взаимодействие с сервером
Все операции выполняются через AJAX-запросы:
- При загрузке страницы данные загружаются с сервера.
- При создании, редактировании, удалении поездки или заметки данные отправляются на сервер, после успешного ответа обновляется интерфейс.
Дополнительные возможности
- Поиск поездок по названию.
- Сортировка поездок по дате начала.