Какой лучший способ хранить загруженные изображения на сайте php - PullRequest
0 голосов
/ 15 июня 2011

Я делаю небольшой сайт по управлению финансами в php. Я должен хранить довольно много изображений для своего приложения, но я не понимаю, где их хранить. Мой сценарий

У пользователя будет

  1. Сберегательный счет
  2. Фиксированный депозит

Теперь для каждого фиксированного депозита мне нужно хранить

  1. отсканированное изображение этого FD
  2. одно или несколько изображений для источника денег, таких как банковские чеки

Теперь, где я должен хранить все эти изображения. Я имею в виду

  1. Нужно ли создавать папку для каждого пользователя, затем для каждого FD, а затем для источников
  2. Или все изображения в одной папке

Ответы [ 2 ]

3 голосов
/ 15 июня 2011

Не храните все изображения в одной папке; у вас будут проблемы, когда у вас будут тысячи файлов в одной папке. Было бы разумно и удобно делить создание подпапки для каждого пользователя.

Не помещайте папку в веб-доступный каталог. Вместо этого используйте промежуточный скрипт php, который принимает некоторые параметры, проверяет, имеет ли запрашивающий пользователь привилегии для просмотра файла, а затем использует readfile () для возврата изображения. Таким образом вы не позволяете людям просматривать изображения других людей.

Не используйте имя файла загруженного изображения. Вместо этого вы можете использовать идентификатор строки базы данных в качестве имени или создать UUID; что-то уникальное и сгенерированное вами. Таким образом, вам не нужно беспокоиться о том, что пользователи загружают файлы с конфликтующими именами или пытаются взломать вашу систему с помощью сумасшедших имен файлов.

0 голосов
/ 15 июня 2011

Я бы определенно имел папку (идентификатор пользователя) для каждого пользователя, поэтому вам не придется анализировать гигантскую папку изображений, если вы пытаетесь загрузить изображения одного пользователя.Кроме того, я думаю, что вы могли бы просто сохранить их в одной папке и использовать соглашение об именах или сгруппировать все изображения в подпапку таким образом, чтобы упростить поиск этих изображений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...