<MyRusakov.ru />

Создание Интернет-магазина на OpenCart 2.0

Создание Интернет-магазина на OpenCart 2.0

Видеокурс "Создание Интернет-магазина на OpenCart 2.0" обучит Вас созданию любых Интернет-магазинов на OpenCart 2. В первом разделе курса разбираются абсолютно все возможности данного движка с примерами.

Во втором разделе создаётся полноценный Интернет-магазин, где Вы уже всё увидите своими глазами.

И, наконец, в третьем разделе курса созданный Интернет-магазин будет размещён в Интернете.

К курсу так же идут бесплатные и очень ценные Бонусы сопоставимые с самим курсом: "Как сэкономить на Яндекс.Директ до 50%", "Дропшиппинг" и "Как раскрутить Интернет-магазин".

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

Подписавшись по 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>";
}
}
Профиль Ответить