Загрузка изображений на сервер

Здравствуйте!
Помогите пожалуйста решить вопрос с загрузкой изображений на сервер. Нужен хороший uploader с возможностью перетаскивания изображений и выбора количества. Ну и как с помощью PHP проверить изображение на то что это изображение.

(RU) Загрузка файлов методом POST
(EN) POST method uploads

За ссылки спасибо. Вот только мне интересно как проверить просто изображение является таковым, а не чем то другим

Так там ведь по ссылке есть метод проверки:

$_FILES[‘userfile’][‘type’]

The mime type of the file, if the browser provided this information. An example would be "image/gif" . This mime type is however not checked on the PHP side and therefore don’t take its value for granted.

На сколько мне известно, НО mime может быть подделан, а это означает что проверка не очень то и надежная к сожалению =(

:arrow_down:

Метод получает информацию о файле полагаясь на данные переданные браузером.
Какой смысл проводить дополнительную проверку?

Для того что бы быть уверенным на все 99% что загружаемый файл безопасен и не навредит сайту

Alex P., спасибо сейчас гляну

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

P. S.
Здесь разумней будет держать в запасе бэкап основного функционала сайта и периодически бэкапить БД (например раз в сутки или автоматически перед внесением изменений).

Как файл может навредить?
Не запускайте его как скрипт ))

Генерируйте или проверяйте имя.

У нас возможно всё =)

Я так понимаю простая генерация решает? То есть мне надо просто нормально задавать правильное расширение типа .jpg или .png и тд

В линуксах расширение обычно не сильно важно. Скорее чтобы не было каких-нибудь странных символов или пути папок.