Страница 1 из 1

Загрузка Файла

СообщениеДобавлено: 08 янв 2014, 15:52
sergio11ofpp
Хотел спросить можно как то изменить размер изображения(Длина и Ширина) перед загрузкой файлы срествами С5
Код: Выделить всё
$fi = new FileImporter();
// вот перед добовлениме файла  в Файл Менеджер.
$newFile = $fi->import($_FILES['userfile']['tmp_name'],$_FILES['userfile']['name']);

Если после, я так понимаю вот так,
Код: Выделить всё
$im = Loader::helper('image');
$img = $im->getThumbnail($newFile, 100, 100);

Но это будет cache как получненно изображение заменить?
Но всё так хотелось бы при захрузги(Босю чтоб Shell не залили)

Re: Загрузка Файла

СообщениеДобавлено: 08 янв 2014, 21:38
cmsservice
Используйте метод create хелпера image для создания уменьшенной копии и уже потом импортнуть, чтобы он показался в файлменеджере.

Re: Загрузка Файла

СообщениеДобавлено: 09 янв 2014, 00:22
sergio11ofpp
Чего то не получается можно по подробнее?

Re: Загрузка Файла

СообщениеДобавлено: 09 янв 2014, 09:19
cmsservice
что именно не получается?

Re: Загрузка Файла

СообщениеДобавлено: 09 янв 2014, 17:41
sergio11ofpp
Код: Выделить всё
$temppath = $_FILES['userfile']['tmp_name'];
$filename = $_FILES['userfile']['name'];
Loader::library("file/importer");
$fi = new FileImporter();
$newFile = $fi->import($temppath, $filename);
$f = $newFile->getFile();
$im = Loader::helper('image');
$newthumb = $im->getThumbnail($f, 100, 100, true);
$f->delete();
$pathtothumb = $_SERVER['DOCUMENT_ROOT'].$newthumb->src;     
$anotherfile = $fi->import($pathtothumb, $filename);

В общем я сделал так с Create не получается((( точнее я не вкурсе как с ним работать

Re: Загрузка Файла

СообщениеДобавлено: 10 янв 2014, 10:49
cmsservice
А можно было сделать так:

Код: Выделить всё
$filename = $_FILES['userfile']['name']; 

// сформируем имя временного файла для импорта с путем
$fh = Loader::helper("file");
$temppath = $fh->getTemporaryDirectory() . '/' . $filename;

// сделаем его уменьшенную копию
$im = Loader::helper('image');
$im->create($_FILES['userfile']['tmp_name'], $temppath, 100, 100, true);

// импортнем в менеджер файлов
Loader::library("file/importer");
$fi = new FileImporter();
$newFile = $fi->import($temppath, $filename);

// подчистим за собой
unlink($temppath); 

Re: Загрузка Файла

СообщениеДобавлено: 17 янв 2014, 18:07
sergio11ofpp
Круто работает Спасибо)))
Только вопрос мы из загруженного делаем Копию а загруженный удаляется потом?

Re: Загрузка Файла

СообщениеДобавлено: 17 янв 2014, 18:29
cmsservice
Вообще-то да, удаляется. См. последнюю строчку unlink