Как организовать собственное хранилище файлов для пользователей сайте, а-ля облако?

Есть некоторый сайт. Встала задача, чтобы пользователи сайта имели новый раздел «Мои файлы».
Данный раздел должен выглядеть как обозреватель директории юзера, которая для него автоматом создается при регистрации.
Пользователь видит собственные файлы, может их удалять, загружать и тд.
Но вот у меня встал вопрос: как реализовать такое, чтобы он мог дать к своим файлам и папкам доступ другим пользователям системы по логину(email)?
Что можно использовать? Может уже есть готовые библиотеки?

Движок сайта на PHP.
  • Вопрос задан
  • 370 просмотров
Решения вопроса 2
TTATPuOT
@TTATPuOT
https://code.patriotovsky.ru/
Вопрос то ваш в чём конкретно?
Можно использовать - PHP, JavaScript, MySQL.
Готовых библиотек нет.
Ответ написан
glaphire
@glaphire Куратор тега PHP
PHP developer
Условные таблицы и их поля:
users: id,username
files: id, user_owner_id, filename, path
file_accesses: file_id, user_id, share_url, permission_level

Владелец у файла должен быть всегда, а доп.доступы могут быть, могут не быть (таблица file_accesses). Когда хотите расшарить - генерите ссылку share_url для file_id, задаете права доступа (permission_level), указываете, кому в системе расшарить - вот строка в базе для идентификации прав к файлам у не-владельца. Уровни прав доступа пишете уже на уровне бекенда
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
samodum
@samodum
Какой вопрос - такой и ответ
В чём именно проблема?
Это же реализуется элементарно
Ответ написан
@RMate
Реализуете скрипт-загрузчик который загружает файл во временную папку, вычисляет хэш, проверяет файл в базе. если файла в базе нет - сохраняет файл в необходимую вам директорию. Ну и информацию о файле и хеше файла сохраняет в базу. Дальше вам остается сделать только представление этих файлов.
Ответ написан
Комментировать
@m4f1
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы