<MyRusakov.ru />

Создание крупного проекта на Java с нуля

Создание крупного проекта на Java с нуля

Данный курс научит Вас создавать крупные проекты на Java грамотно и быстро. В курсе Вы увидите создание большой и сложной программы на Java абсолютно с нуля.

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

В рамках упражнений курса Вы параллельно со мной будете создавать свою большую программу на Java, что даст Вам необходимую практику, после которой для Вас уже не будет разницы, какого размера создавать программы.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Загрузка нескольких изображений на серв
08.01.2014 23:22:43 Загрузка нескольких изображений на серв Сообщение #1
ONYX

ONYX

Новичок

Новичок

Дата регистрации:
25.11.2013 21:55:43

Сообщений: 5

у меня вопрос по загрузке нескольких изображений однавременно.
сделал такую функцию:
function new_full_img(){
if(isset($_FILES['file']) && $_FILES['file']['name']){
$full_upload_ok = '';
foreach($_FILES['file']['name'] as $k => $v){
$imgname = date('dmYHis').rand(100, 10000);
$year = date('Y');
$imgaddr = $_SERVER['DOCUMENT_ROOT']."/images/news/$year/";
//проверяем размер
if($_FILES['file']['size'][$k] < 1000*1024)
{
//проверяем на содержимое
if($_FILES['file']['type'][$k] == "image/gif" || $_FILES['file']['type'][$k] == "image/jpg" || $_FILES['file']['type'][$k] == "image/jpeg" || $_FILES['file']['type'][$k] == "image/png"
{
//проверяем загружен ли файл на сервер
if(is_Uploaded_file($_FILES['file']['tmp_name'][$k]))
{
//проверяем размеры
$size = GetImageSize($_FILES['file']['tmp_name'][$k]);
if($size[0] > 1024 AND $size[1] > 768)
{
echo "<center><h2>ОШИБКА!FULL Максимальный размер картинки 1024*768px.</h2><br /><input type='submit' value='назад' onClick='history.go(-1)' /></center>";
exit();
}else{
$type_file = str_replace('image/', '', $_FILES['file']['type'][$k]);
if(move_Uploaded_file($_FILES['file']['tmp_name'][$k], $imgaddr.$imgname[$k].'.'.$type_file))
{
global $full_upload_ok;
$full_upload_ok .= imgname[$k].".".$type_file."\r\n";
$full_upload_ok = trim($full_upload_ok);
return $full_upload_ok;
}else{
echo "<center><h2>ОШИБКА!FULL Файл не загружен.</h2><br /><input type='submit' value='назад' onClick='history.go(-1)' /></center>";
exit();
}
}
}else{
echo "<center><h2>ОШИБКА!FULL Файл не загружен на сервер.</h2><br /><br /><input type='button' value='ВЕРНУТЬСЯ НАЗАД' onClick='history.go(-1)' /></center>";
exit(); }
}else{
echo "<center><h2>ОШИБКА!FULL Неверный формат изображения! Либо превышен размер изображения в пикселях.</h2><br /><br /><input type='button' value='ВЕРНУТЬСЯ НАЗАД' onClick='history.go(-1)' /></center>";
exit(); }
}else{
echo "<center><h2>ОШБИКА!FULL Максимальный размер всех файла не должен превышать 1мб.</h2><br /><br /><input type='button' value='ВЕРНУТЬСЯ НАЗАД' onClick='history.go(-1)' /></center>";
exit(); }

}
}
}


мне подсказали что я иду циклом по одному файлу, а как сразу по нескольким я пока не могу понять.
Гдето нашол что нужно так:
foreach($_FILES as $k=>$f)
но тоже что то не получилось пока

подскажите пожалсто где я ошибся или как правильно нужно.
Профиль Ответить
16.01.2014 11:08:18 Загрузка нескольких изображений на серв Сообщение #2
tikkiwiki

tikkiwiki

Модератор

Модератор

Дата регистрации:
15.11.2013 15:36:59

Сообщений: 194

Так попробуйте:



function new_full_img(){

$pic_weight = 3000;
$pic_height = 3000;

if (isset($_FILES))
{
//пролистываем весь массив изображений по одному $_FILES['file']['name'] as $k=>$v
foreach ($_FILES['file']['name'] as $k=>$v)
{
//директория загрузки
$year = date('Y');
$uploaddir = $_SERVER['DOCUMENT_ROOT']."/images/news/$year/";
//новое имя изображения
$apend=date('YmdHis').rand(100,1000).'.png';
//путь к новому изображению
$uploadfile = "$uploaddir$apend";


if($_FILES['file']['type'][$k] == "image/gif" || $_FILES['file']['type'][$k] == "image/png" ||
$_FILES['file']['type'][$k] == "image/jpg" || $_FILES['file']['type'][$k] == "image/jpeg"
{

$blacklist = array(".php", ".phtml", ".php3", ".php4";
foreach ($blacklist as $item)
{
if(preg_match("/$item\$/i", $_FILES['file']['name'][$k]))
{
echo "Нельзя загружать скрипты.";
exit;
}
}


if (move_uploaded_file($_FILES['file']['tmp_name'][$k], $uploadfile))
{

$size = getimagesize($uploadfile);

if ($size[0] < $pic_weight && $size[1] < $pic_height)
{
global $full_upload_ok;
$full_upload_ok .= $apend."\r\n";


}
unlink($uploadfile);
else
{
echo "<center><br>Размер пикселей превышает допустимые нормы.</center>";
unlink($uploadfile);
}
}
else
echo "<center><br>Файл не загружен, вернитесь и попробуйте еще раз.</center>";
}
else
echo "<center><br>Можно загружать только изображения в форматах jpg, jpeg, gif и png.</center>";
}
}
Профиль Ответить