Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Изменение размера изображения 
V
    Опции темы
abalich
Дата 21.5.2007, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 26.2.2007
Где: Воронеж

Репутация: нет
Всего: нет



У меня пользователь может загрузить файл(рисунок) на сервер, я его проверяю с помощью написанной мной админки и если picture нормальное я его добавляю в фотогалерею, но мне надо чтобы в фотогалерее фотки былли шириной 200px а высотой по пропорции. Пробовал через поиск - нашел но разобраться не смог. Плиз дайте мне код с помощью которого фотка меняет размер на width=200 а высота по пропорции и этот файл копировался в другую директорию например /images/small/
Спасибо!


--------------------
Мой дядя самых честных "грабил"...
PM MAIL WWW   Вверх
PARROT
Дата 21.5.2007, 19:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 23
Всего: 50



abalich, ты очень плохо искал!
Код

  function image_chop($file) {
                                                   $path_real=$file;
                                                   $src_img=ImageCreateFromJpeg("$path_real");
                                                   $src_width=ImagesX($src_img);
                                                   $src_height=ImagesY($src_img);
                                                   $dest_width="100";
                                                   $quality="80";
                                                   $dest_height=($dest_width/$src_width) * $src_height;
                                                   $dest_img=ImageCreateTrueColor($dest_width, $dest_height);
                                                   ImageCopyResampled($dest_img, $src_img, 0, 0, 0, 0, $dest_width, $dest_height, $src_width, $src_height);
                                                   ImageJpeg($dest_img, $file, $quality);
                                                   ImageDestroy($dest_img);
                                                   }



--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
abalich
Дата 22.5.2007, 09:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 26.2.2007
Где: Воронеж

Репутация: нет
Всего: нет



PARROT, подскажи:
Код

//--у меня имя файла $file_name="/photo/1.jpg"
//--Как пользоваться этой функцией
     function image_chop($file) {
                                                   $path_real=$file;
                                                   $src_img=ImageCreateFromJpeg("$path_real");
                                                   $src_width=ImagesX($src_img);
                                                   $src_height=ImagesY($src_img);
                                                   $dest_width="100";
                                                   $quality="80";
                                                   $dest_height=($dest_width/$src_width) * $src_height;
                                                   $dest_img=ImageCreateTrueColor($dest_width, $dest_height);
                                                   ImageCopyResampled($dest_img, $src_img, 0, 0, 0, 0, $dest_width, $dest_height, $src_width, $src_height);
                                                   ImageJpeg($dest_img, $file, $quality);
                                                   ImageDestroy($dest_img);
                                                   }

Я в php новичек!!!! Плиззз!!!


--------------------
Мой дядя самых честных "грабил"...
PM MAIL WWW   Вверх
Самозванка
Дата 22.5.2007, 10:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Девушка в стиле IT
**


Профиль
Группа: Завсегдатай
Сообщений: 484
Регистрация: 5.9.2006
Где: USA

Репутация: нет
Всего: 40



Просто вызываешь функцию image_chop($file_name);

И еще изменяешь в самой функции
$dest_width="100";

на

$dest_width="200";



Это сообщение отредактировал(а) Самозванка - 22.5.2007, 11:04
PM MAIL ICQ   Вверх
PARROT
Дата 22.5.2007, 10:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 23
Всего: 50



abalich, так дело не пойдет.
Может за Вас написать? Тогда Вам в работу. Дали функцию, разбирайся.
Мы помогаем, но не пишем скрипты.


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
abalich
Дата 22.5.2007, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 26.2.2007
Где: Воронеж

Репутация: нет
Всего: нет



Не написать я и сам смогу....
Как я понял в функции $file - имя файла?????
Если да то начну приступать к изучению функции!!!



--------------------
Мой дядя самых честных "грабил"...
PM MAIL WWW   Вверх
abalich
Дата 22.5.2007, 11:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 26.2.2007
Где: Воронеж

Репутация: нет
Всего: нет



Немогу понять, функцию вставил, ошибок никахих не выдает, с файлом ничего не происходит!!!???


--------------------
Мой дядя самых честных "грабил"...
PM MAIL WWW   Вверх
PARROT
Дата 22.5.2007, 13:06 (ссылка) |  (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 23
Всего: 50



abalich, так чтобы с файлом что-то получилось, его надо загрузить.
Покажи весь код.


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
abalich
Дата 22.5.2007, 13:38 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 26.2.2007
Где: Воронеж

Репутация: нет
Всего: нет



Файл уже на сервере путь к файлу /photo/ и имя файла.
Код на странице такой:
Код

ob_start();
//--Если кнопка add нажата
if ($add){
//---Принимаю имя файла
//--сдесь манипуляция с базой данных
   $name=$_POST['file_name'];
   $link=mysql_connect("localhost","prognoz8_abalich","abalakia");
   mysql_select_db("prognoz8_reg",$link);
   $str_sql_query="UPDATE `pictures` SET `status`='test' WHERE `name`='".$name."'";
   mysql_query($str_sql_query,$link);
   mysql_close($link);
   header("Location: content/user_file/index.php");
     }
ob_end_flush();

После mysql_close($link); я хочу чтобы этот файл стал менше (width=200, а высота по пропорци) и измененный файл копировался /photo/small/с темже именем, что и большая картинка!!!


--------------------
Мой дядя самых честных "грабил"...
PM MAIL WWW   Вверх
Dr.Wisdom
Дата 22.5.2007, 14:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 145
Регистрация: 6.1.2005

Репутация: нет
Всего: 0



Код

function image_chop($file) 
{
   $path_real=$_SERVER['DOCUMENT_ROOT']."/photo/".$file;        //насчет слешей после $_SERVER['DOCUMENT_ROOT'] я пожизненно не помню
   $save_path=$_SERVER['DOCUMENT_ROOT']."/photo/small/".$file;    //если так не работает убрать слеш перед photo

   $src_img=ImageCreateFromJpeg("$path_real");
   $src_width=ImagesX($src_img);
   $src_height=ImagesY($src_img);
   $dest_width="200";
   $quality="80";
   $dest_height=($dest_width/$src_width) * $src_height;
   $dest_img=ImageCreateTrueColor($dest_width, $dest_height);
   ImageCopyResampled($dest_img, $src_img, 0, 0, 0, 0, $dest_width, $dest_height, $src_width, $src_height);
   ImageJpeg($dest_img, $save_path, $quality);

   ImageDestroy($dest_img);
   ImageDestroy($src_img);
}

image_chop("1.jpg");


Однако это только для jpg
для других надо ImageCreateFromJpeg заменять на ImageCreateFromGif (Png, что там еще есть...)

Это сообщение отредактировал(а) Dr.Wisdom - 22.5.2007, 14:20
--------------------
VIVA LA RESISTANCE
PM MAIL   Вверх
abalich
Дата 22.5.2007, 14:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 26.2.2007
Где: Воронеж

Репутация: нет
Всего: нет



Поповоду слешей, то они нужны...

Добавлено через 6 минут и 9 секунд
Dr.Wisdom  спасибо!!!!


--------------------
Мой дядя самых честных "грабил"...
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0676 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.