Ресайз картинки

j0ker

Новичок
Ресайз картинки

есть такой код:

$new_width = 400;
$new_height = 300;
$filename = "1.jpg";

list($width, $height) = getimagesize($filename);

if ($width>$height)
{
$new_height = $new_width * ($height/$width);
} else
{
$new_width = $new_height * ($width/$height);
}

$image_p = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefromjpeg($filename);
imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
imagejpeg($image_p, "1r.jpg", 100);

У меня на компе работает нормально, а вот у хостера (hut.ru) не делает вообще ничего - никаких ошибок, сообщений, вообще ничего...

-~{}~ 14.02.06 15:06:

upd.
только что получил интересный результат - работает на небольших простых картинках. с нормальными фотками ступор наступает при вызове imagecreatefromjpeg. Наверное, не хватает памяти на сервере (или я неправ, незнаю...). Можно ли как-нибудь ресайзить картинку менее ресурсоемким способом?
 

SiMM

Новичок
> не помогло
Читай ещё. До полного просветления. Рекомендуется при чтении ещё и думать.
 

j0ker

Новичок
хорошо, такой код
<?php
ini_set('display_errors',1);
error_reporting(E_ALL);

echo "a";
$img = imagecreatefromjpeg("aa.jpg") or die('err');
imagedestroy($img);
echo "b";
?>

1) aa.jpeg - небольшая картинка (400*300)
вывод : ab
2) aa.jpeg - фото (1600*1200 или 1024*768)
вывод : a
html src : там тоже a
логов сервера об ошибках или еще чего-либо подобного на хостере не нашел

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

McSimm

Новичок
Посмотрите user notices
http://php.paco.net/manual/ru/function.imagecreatefromjpeg.php

Про crash php без отдачи контента там тоже попадается.
вероятно что-то из описанного подходит в вашем случае.
 

Фанат

oncle terrible
Команда форума
j0ker
сделай ошибку в имени функции, и скажи - пишет пхп что-то, или нет?
 

j0ker

Новичок
да, если ошибка явная, то все нормально - т.е. ошибки выводятся

-~{}~ 14.02.06 16:39:

ошибку нашел
FATAL: emalloc(): Unable to allocate 2272 bytes
это значит, что у данного хостера в большинстве случаев скрипт работать не будет или существуют способы выделить динамически побольше памяти?
 

white phoenix

Новичок
j0ker
> emalloc()
Однако...
> и существуют способы выделить динамически побольше
Нет.
 
Сверху