Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: как правильно организовать структуру папок на хостинге?
Покинул форум
Сообщений всего: 60
Дата рег-ции: Нояб. 2010
Помог: 0 раз(а)
вопрос возник вот откуда: создаю личные странички для зарегистрированных пользователей, на эти личные странички посетители смогут загружать файлы. при большом числе зарегистрированных людей, количество их файлов может исчисляться в десятках и сотнях тысяч. какую лучше структуру папок организовать для файлов с личных страничек?
EuGen
Отправлено: 11 Июля, 2011 - 16:26:41
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
Хранить, например, в 3-х уровневой системе
/user_id/content_type/date
Самый верхний уровень - id пользователя, затем - тип контента (видео, фотографии, музыка и т.п.), затем - дата создания (например, в формате Y-m-d то есть 2011-07-11 для сегодняшней даты)
По идее, это должно решить вопрос с большим числом файлов в одном каталоге.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
Мелкий
Отправлено: 11 Июля, 2011 - 16:36:24
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Покинул форум
Сообщений всего: 60
Дата рег-ции: Нояб. 2010
Помог: 0 раз(а)
Мелкий пишет:
http://habrahabr.ru/blogs/personal/70147/
наверно остановлюсь на варианте описанном по этой ссылке. спасибо)
вопрос сразу появился, как можно отдать файл скриптом с нужным названием (в папке скорее всего будет md5 названия)? представляю такой вариант: при нажатии на ссылку скачивания, файл перемещается в отдельную папку, переименовывается и отдается на скачивание, через определенное время удаляется. можно как-нибудь это сделать проще?
PS: думал тема удалена, случайно зашел сюда по другому вопросу, оказывается тема перемещена. недоработка форума что о перемещении темы не приходит оповещение автору темы
LIME
Отправлено: 11 Июля, 2011 - 19:56:06
Активный участник
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
Brajt в базе хранить данные о файле
реальное имя , имя как хеш , тип данных итд
перечитайте статью на хабре
Champion
Отправлено: 11 Июля, 2011 - 20:09:03
Активный участник
Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008 Откуда: Москва
Помог: 57 раз(а)
Brajt пишет:
md5 названия
- это наверное не самая удачная мысль, потому что у файлов с одинаковыми именами одинаковые md5. Поэтому пользователь может загрузить новый фотка.jpg и затрет старый фотка.jpg. Лучше использовать uniqid()
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.