Фотографии по годам
Реализуйте сервис, на котором пользователь может размещать свои фотографии в различном возрасте. Продумайте структуру базы данных для хранения пользователей (ФИО, дата рождения), фотографий (год, место, файл) и дружеских связей. Реализуйте регистрацию и авторизацию пользователей. Настройте серверную часть для работы с API. Все операции должны выполняться через AJAX-запросы без перезагрузки страницы. Скачать верстку для проекта.
Основные возможности проекта
- Регистрация и авторизация пользователей.
- Указание ФИО и даты рождения в профиле.
- Загрузка фотографий с указанием года и места съемки.
- Редактирование и удаление фотографий.
- Хронологический просмотр фотографий с расчетом возраста.
- Система друзей и просмотр фотографий друзей.
- Все операции выполняются через AJAX без перезагрузки страницы.
Регистрация и авторизация
Размещать и просматривать фотографии могут только зарегистрированные пользователи. При регистрации пользователь указывает ФИО и дату рождения. Дата рождения используется для расчета возраста на каждой фотографии.
Загрузка фотографий
В профиле пользователь может загружать фотографии. При загрузке нужно указать:
- Файл фотографии (инпут file).
- Год, в котором сделана фотография (инпут number).
- Место, где сделана фотография (инпут).
Пользователь может редактировать и удалять свои фотографии.
Просмотр фотографий
На странице просмотра пользователь видит свои фотографии, отсортированные в хронологическом порядке: от более раннего возраста к более позднему. Для каждой фотографии отображается год съемки, место и возраст пользователя на момент фотографии. Возраст рассчитывается автоматически по дате рождения пользователя и году фотографии.
Друзья
Фотографии пользователя могут просматривать только его друзья. Профиль пользователя генерирует специальную ссылку для добавления в друзья. При переходе по этой ссылке другой пользователь добавляется в список друзей. После этого он может просматривать фотографии этого пользователя.
Взаимодействие с сервером
Все операции выполняются через AJAX-запросы:
- При загрузке страницы фотографии загружаются с сервера и сортируются по году.
- При загрузке фотографии файл отправляется на сервер вместе с годом и местом съемки.
- При редактировании и удалении фотографии данные обновляются или удаляются в базе данных.
- При добавлении в друзья по ссылке связь сохраняется в базе данных.
Дополнительные возможности
- Просмотр фотографий друга в хронологическом порядке.
- Копирование ссылки для добавления в друзья.
- Удаление пользователя из списка друзей.