Доброе время суток PHP программеры. Давно я вам не писал, и был повод. Но «кто вспомнит прошлое, тому глаз вон» Нородная мудрость (с). Сегодня, через год отсутсятвия, я снова хочу взорвать Вам мозги. А конкретнее, поговорим о свободном добавлении посетителями фото-файлов на некий ресурс, а ещё точнее про алгоритм (блок-схему) как это надо или не надо делать. И так: Перед нами HTML форма отправки файла: типа поле и кнопочка «обзор…». По идее пользователь должен выбрать на своем компе некий файл и соответственно положить его. Далее он нажимает кнопку формы а-ля “submit” и форма переходит в post=”xxx.php”. Ну я прям как для новичков это рассказываю. Как написать такую форму я опущу, а вот xxx.php файлик для нас более актуален. Сейчас я не смогу Вам выдать полный кодинг этого файла (на другом компе), зато нашел блок-схему в *.gif !!! Хочу обратить внимание на то, что фото на сайт будут загружаться любыми пользователями, без предварительной регистрации!!! Преветствуем. Датировка Блок-схемы – 7 марта 2007г. Поясняю алгоритм блок-схемы: 0) Непосредственно форма отправки файла 1) Чтож! Форма отправлена, стоит проверить есть ли у нас в серверных темпах файлик от этого поста? Что-то есть -> на 2) ---- Нет –> на 0) 2) Молодец! Загрузил что-то не на**ал! А что это? Проверим расширение. Это JPEG или GIF -> 3) ---- Что-то другое –> на 0) (Политика сайта: только *.GIF или *.JPG или *.JPEG) 3) Ну любой файл можно переименовать в *.jpg. Стоит проверить а вправду это изображение или нет? ОК! – Это картинка –> 4) ---- Нет это не картинка хоть и имеет расширение картинки -> на 0) 4) А вот и картинка. А какой размер она имеет. Нам не нужно ничего меньше 320 так или 320 иначе (некрасиво будет смотреться на сайте). Я (картинка) сфоткана с мобильной цифры 0,3мпх (640на480) -> 5) Я сделана в пайнте и я 10000000000000000000000 на 1 пикс. -> на 0) 5) Ну вот и успокоились… Куда ее сохранять- это отдельная тема, неважно, сохранили из темп куда-то. -> на 6) 6) Тут ищем какая сторона больше и обрезаем (GD2 – 4ever) картинку с соотношениями 1 к 0,75 – т.е. соотношение любой стандартной фото (480/640=0,75) -> 7) 7) Ну тут блок-схема толком заканчивается для общего, т.е. то что я хочу вам доложить. И собственно: НЕ НАДО мне говорить, что создано 100 классов для этого и т.д. Собственно меня интересуют Ваши варианты БЕЗОПАСНОГО решения данной проблемы и/или объяснение дыр в моей блок-схемы =) Б***Ь!!!!! А как картинку то в форум вставить? =)
Эмм... А код-то я похерил! Поэтому: скажите! какой из пунктов данного скрипта (пусть и в блок-схеме) у Вас вызывает особое беспокойство!???
надо делать проще, но не слишком просто!! а вообще какой это нафиг алгоритм, тут максимум 100 строк кода... нафиг пеходить, лучше подгружать, файл, а ещё лучше класс...