Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: upload и resize

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
HQ_Maker
Отправлено: 19 Января, 2012 - 11:13:34
Post Id


Новичок


Покинул форум
Сообщений всего: 34
Дата рег-ции: Сент. 2010  


Помог: 0 раз(а)




Добрый день всем.
Мне надо было при upload картинки резать на нужнуй резмер.
Чтобы все картинки при upload были размером 191х131.

И подумал зделать так чтоб при upload картинка отрезалось, потом сохранилось..

Посоветуйте пожалуста безапоснее resize картинку при upload ?

Например есть функция

PHP:
скопировать код в буфер обмена
  1. function resize($file_input, $file_output, $w_o, $h_o, $percent = false) {
  2.         list($w_i, $h_i, $type) = getimagesize($file_input);
  3.         if (!$w_i || !$h_i) {
  4.                 echo 'Невозможно получить длину и ширину изображения';
  5.                 return;
  6.         }
  7.         $types = array('','gif','jpeg','png');
  8.         $ext = $types[$type];
  9.         if ($ext) {
  10.                 $func = 'imagecreatefrom'.$ext;
  11.                 $img = $func($file_input);
  12.         } else {
  13.                 echo 'Некорректный формат файла';
  14.                 return;
  15.         }
  16.         if ($percent) {
  17.                 $w_o *= $w_i / 100;
  18.                 $h_o *= $h_i / 100;
  19.         }
  20.         if (!$h_o) $h_o = $w_o/($w_i/$h_i);
  21.         if (!$w_o) $w_o = $h_o/($h_i/$w_i);
  22.  
  23.         $img_o = imagecreatetruecolor($w_o, $h_o);
  24.         imagecopyresampled($img_o, $img, 0, 0, 0, 0, $w_o, $h_o, $w_i, $h_i);
  25.         if ($type == 2) {
  26.                 return imagejpeg($img_o,$file_output,100);
  27.         } else {
  28.                 $func = 'image'.$ext;
  29.                 return $func($img_o,$file_output);
  30.         }
  31. }




и страница upload


PHP:
скопировать код в буфер обмена
  1.  
  2. if(empty($POST["file"])){
  3. echo '
  4. <form action="test.php?dell=go&'.$_SERVER["QUERY_STRING"].'" enctype="multipart/form-data" method="post">
  5. <input type="file" name="file" accept="image/jpeg,image/gif" autocomplete="off" />
  6. <input type="submit" /></form>';}
  7.  
  8.  
  9.  
  10.  
  11.  
  12. [b]else {
  13.  
  14. if(empty($_FILES['file']['tmp_name'])) {echo 'ERROR'; break;}
  15.                         else {echo 'ok';
  16.                        
  17.                         resize($_FILES['file']['tmp_name'], $_FILES['file']['name'], 190, 131);
  18.                         echo $_FILES['file']['tmp_name'];
  19.  
  20. }}[/b]
  21.  
  22.  
  23.  
  24.  



При upload мы файл не сохраняем, где временно сохряняеться (tmp папка) оттуда берем вставляем на функцию resize. Так относитьсо правильно ?


Отредактировано модератором: Саныч, 22 Января, 2012 - 20:31:44
Не стоит "апать"! Быстрей от этого ответа вы все равно не получите.
 
 Top
CrazyOne
Отправлено: 18 Мая, 2012 - 11:36:41
Post Id


Новичок


Покинул форум
Сообщений всего: 40
Дата рег-ции: Май 2012  


Помог: 0 раз(а)




Ну правильно, а что тебя смущает? Обрезал картинку, затем загрузил на сервер и всё.

Правда так лучше делать, если тебе не нужен оригинал.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Графика в PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB