Только что написал проверку на загружаемую аватару. Может кому пригодится. Да и критику хочется выслушать ;)
$avatar = (isset($_FILES['avatar']) && is_array($_FILES['avatar']))? $_FILES['avatar']: null;
$errors = array();
if($avatar['error'] == 3)
$errors['avatar'] = «Файл не докачался на сервер. Попробуйте еще раз.»;
elseif($avatar['error'] == 2)
$errors['avatar'] = «Размер файла превышает допустимые 50 Кб.»;
elseif($avatar['error'] != 0)
$errors['avatar'] = «Произошла какая-то неизвестная ошибка при загрузке аватара.»;
elseif(!preg_match("~(.*?)\.(jpg|gif)$~i",$avatar['name']))
$errors['avatar'] = «Формат файла не JPG и не GIF.»;
else
{
/* получаем размеры файла и проверяем картинка ли это вообще */
@list($width,$height) = getimagesize($avatar['tmp_name']);
if(!is_numeric($width) || !is_numeric($height))
$errors['avatar'] = «Загружайте, пожалуйста, картинку. Ничего другого у Вас просто не получится загрузить. ;)»;
elseif($width != 100 || $height != 100)
$errors['avatar'] = «Размеры аватара должны быть 100 на 100 пикселей, мы же предупреждали. :)»;
}
$avatar = (isset($_FILES['avatar']) && is_array($_FILES['avatar']))? $_FILES['avatar']: null;
$errors = array();
if($avatar['error'] == 3)
$errors['avatar'] = «Файл не докачался на сервер. Попробуйте еще раз.»;
elseif($avatar['error'] == 2)
$errors['avatar'] = «Размер файла превышает допустимые 50 Кб.»;
elseif($avatar['error'] != 0)
$errors['avatar'] = «Произошла какая-то неизвестная ошибка при загрузке аватара.»;
elseif(!preg_match("~(.*?)\.(jpg|gif)$~i",$avatar['name']))
$errors['avatar'] = «Формат файла не JPG и не GIF.»;
else
{
/* получаем размеры файла и проверяем картинка ли это вообще */
@list($width,$height) = getimagesize($avatar['tmp_name']);
if(!is_numeric($width) || !is_numeric($height))
$errors['avatar'] = «Загружайте, пожалуйста, картинку. Ничего другого у Вас просто не получится загрузить. ;)»;
elseif($width != 100 || $height != 100)
$errors['avatar'] = «Размеры аватара должны быть 100 на 100 пикселей, мы же предупреждали. :)»;
}