[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Загрузка аватара
Gefest
Решил модернизировать блог с помощью аватарок пользователей, но с аплоадом файлов был знаком "между делом".
Сейчас имею скрипт:

$url = "c:/xampp/htdocs/www/BK/content/post/";
// 1)Проверяем, существует ли имя.
if($_FILES['FILE']['name']){
// 2)Проверяем, картинка ли это
if($_FILES['FILE']['type'] == 'image/jpeg' || $_FILES['FILE']['type'] == 'image/png' || $_FILES['FILE']['type'] == 'image/gif') {
// 3)Проверяем размер файла
if($_FILES['FILE']['size'] != 0 AND $_FILES['FILE']['size']<=1024*3*1024){
// 4)Проверяем загрузился ли файл на сервер
if(is_uploaded_file($_FILES['FILE']['tmp_name'])) {
// 5)Перемещаем загруженный файл в необходимую папку $url
if(move_uploaded_file($_FILES['FILE']['tmp_name'], $url."/".basename($_FILES['FILE']['name']))) {
//Выводим сообщение что файл обработа и загружен
echo 'Файл '.basename($_FILES['FILE']['name']).' был успешно загружен в '.$url;
}else{
echo 'Произошла ошибка при перемещении файла в папку'.$url;
}
}
else{
echo 'Прозошла ошибка при загрузке файла на сервер';
}
}
else{
echo 'Размер файла не должен превышать 100Кб';
}
}
else{
echo 'Файл не картинка';
}
}
else{
echo 'Файл должен иметь название';
}

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



Спустя 13 часов, 18 минут, 54 секунды (6.08.2010 - 08:24) linker написал(а):
1. getimagesize('images/image.jpg');
2. move_uploaded_file('temp_filename.jpg', 'images/username.jpg');

Спустя 9 часов, 33 минуты, 13 секунд (6.08.2010 - 17:57) Gefest написал(а):
Цитата
1. getimagesize('images/image.jpg');
2. move_uploaded_file('temp_filename.jpg', 'images/username.jpg');

Вроде проясняется)
Если правильно понял, то до всех проверок сделать:
$size = getimagesize($_FILES['FILE']['name']);
if($size[0]<=30 && $size[1]<=30){/*Выполнять остальные пункты*/}

А во время загрузки файла так:
move_uploaded_file($_FILES['FILE']['tmp_name'], $url."/".$username)

Поправьте пожалуйста, если ошибаюсь.

Спустя 2 дня, 3 часа, 28 минут, 39 секунд (8.08.2010 - 21:26) linker написал(а):
move_uploaded_file($_FILES['FILE']['tmp_name'], $url."/".$username)
$size = getimagesize($url."/".$username);
if($size[0]<=30 && $size[1]<=30)
{
/*Выполнять остальные пункты*/
}
else
unlink($url."/".$username);
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.