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 :: Out of memory

 PHP.SU

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


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

> Без описания
Serpanok
Отправлено: 06 Октября, 2011 - 00:04:28
Post Id


Частый гость


Покинул форум
Сообщений всего: 133
Дата рег-ции: Февр. 2011  
Откуда: Красный Лиман, Украина


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




Всем привет!

У меня выскакивает ошибка:

Fatal error: Out of memory (allocated 16515072) (tried to allocate 4608 bytes) in /usr/home/school4dnua/data/www/school4.dn.ua/bl/add_photo.php on line 41

при выполнении банально простого задания =)

CODE (htmlphp):
скопировать код в буфер обмена
  1. if (!move_uploaded_file($_FILES['photo']['tmp_name'], $file_original)) exit('{"stat":"false"}'); else
  2.         {      
  3.                 list($width, $height) = getimagesize($file_original);
  4.                 if($width<1000) exit('{"stat":"false"}');
  5.                
  6.                 $new_width = 1000;
  7.                 $new_height = $width / $new_width;
  8.                 $new_height = $height / $new_height;
  9.                 $new_height = floor($new_height);
  10.                                                
  11.                 if($format == "jpg")
  12.                 {
  13.                         $image_p = imagecreatetruecolor($new_width, $new_height);
  14.                         $image = imagecreatefromjpeg($file_original);
  15.                         imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
  16.                 }
  17.                 else if($format == "png")
  18.                 {
  19.                         $image_p = imagecreatetruecolor($new_width, $new_height);
  20.                         $image = imagecreatefrompng($file_original);
  21.                         imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);    
  22.                 }
  23.                                                
  24.                 $w_m_y = $new_height - 61;
  25.                 $watermark = imagecreatefrompng("../images/img_watermark.png");
  26.                 imagealphablending($watermark, true);
  27.                 imagecopy($image_p, $watermark, 662, $w_m_y, 0, 0, 338, 61);   
  28.                                                        
  29.                 if(!imagejpeg($image_p, $file_big, 80)) exit('{"stat":"false"}');
  30. }


размер картинки 4МБ и размеры 4500 на 3000 пикс.

в чём может быть проблема?
PHPinfo: https://domen-hosting[dot]net/test.php
это хостинг.

заранее спс!
 
 Top
OrmaJever
Отправлено: 06 Октября, 2011 - 00:11:37
Post Id



Активный участник


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


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




Serpanok пишет:
Fatal error: Out of memory (allocated 16515072) (tried to allocate 4608 bytes) in /usr/home/school4dnua/data/www/s chool4.dn.ua/bl/add_photo.php on line 41

ого, забавно, первый раз такое вижу. Дословный перевод
Память исчерпана: доступно 16 515 072 байт, а вы пытаетесь использовать 4608 байт.
Как минимум страно Растерялся Может стоит обратится к хостеру? Настройки php это в любом случае их забота


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Serpanok
Отправлено: 06 Октября, 2011 - 00:13:31
Post Id


Частый гость


Покинул форум
Сообщений всего: 133
Дата рег-ции: Февр. 2011  
Откуда: Красный Лиман, Украина


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




Собираюсь писать! Потому-что на моём хосте всё ок)
 
 Top
Мелкий Супермодератор
Отправлено: 06 Октября, 2011 - 00:38:01
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


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




Обычный OOM, у машины кончилась память. Радость Большой такой fail для хостинга.

OrmaJever пишет:
Дословный перевод

Странно переводишь Однако
Выделено 16 515 072 байта, нужно ещё 4608.


-----
PostgreSQL DBA
 
 Top
OrmaJever
Отправлено: 06 Октября, 2011 - 00:42:37
Post Id



Активный участник


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


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




Мелкий пишет:
нужно ещё 4608.

а где там слово "ещё" ? А?!

(Отредактировано автором: 06 Октября, 2011 - 00:44:42)



-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Serpanok
Отправлено: 06 Октября, 2011 - 00:45:03
Post Id


Частый гость


Покинул форум
Сообщений всего: 133
Дата рег-ции: Февр. 2011  
Откуда: Красный Лиман, Украина


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




короче хост лажёвый(((
 
 Top
Мелкий Супермодератор
Отправлено: 06 Октября, 2011 - 01:19:57
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


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




OrmaJever пишет:
а где там слово "ещё" ?

Дословно написано "пытались выделить 4608 байта". Вот при этой попытке исключение и приплыло. А память выделяется всегда "ещё".


-----
PostgreSQL DBA
 
 Top
Stierus Супермодератор
Отправлено: 06 Октября, 2011 - 11:18:01
Post Id



Рекордсмен по количеству сообщений за 7 дней


Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008  
Откуда: Москваль


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




Цитата:
Память исчерпана: доступно 16 515 072 байт, а вы пытаетесь использовать 4608 байт.

Цитата:
(allocated 16515072) (tried to allocate 4608 bytes)


Не " доступно 16 515 072", а "выделено 16 515 072", не "а вы пытаетесь", а "попытка выделить 4608" ... то есть уже 16кк выделено, при попытке добавить еще - ошибка.

При работе с картинками большого разрешения с помощью gd-библиотеки, такое происходит постоянно, потому что она написана через жопу и жрет огромное количество памяти, используйте ImageMagick и будет вам счастье.
(Добавление)
Цитата:
Большой такой fail для хостинга
Абсолютно нормально это для хостинга Улыбка У любого хостера есть лимит по выделению памяти как на предоставляемую площадку вцелом, там и на пых в частности, если превышаете этот лимит - у любого хостера получите такую штуку. На моей памяти, работа с gd-либой - самая частая причина получения таких вот сообщений.
 
My status
 Top
Мелкий Супермодератор
Отправлено: 06 Октября, 2011 - 11:49:54
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


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




Stierus пишет:
Не " доступно 16 515 072", а "выделено 16 515 072", не "а вы пытаетесь", а "попытка выделить 4608" ... то есть уже 16кк выделено, при попытке добавить еще - ошибка.

Да, пожалуй, в полвторого ночи переводчик из меня тот ещё.

Stierus пишет:
Абсолютно нормально это для хостинга

Таки выделение 16мб из memory_limit в 128мб - странно как-то. Да и по memory_limit другой fatal error.
Или речь о превышении памяти для всего сайта, соответственно уже софт мониторинга убил?


-----
PostgreSQL DBA
 
 Top
DeepVarvar Супермодератор
Отправлено: 06 Октября, 2011 - 11:54:02
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


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




Stierus пишет:
ImageMagick
кстати да, вещь офигенная. Только я никак не вкурю какие ей параметры передать для crop'а картинки, ну скажем до квадратных симметричных размеров вырезав по максимуму центральную часть из прямоугольного оригинала...
 
 Top
Stierus Супермодератор
Отправлено: 06 Октября, 2011 - 12:05:47
Post Id



Рекордсмен по количеству сообщений за 7 дней


Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008  
Откуда: Москваль


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




Цитата:
Только я никак не вкурю какие ей параметры передать для crop'а картинки, ну скажем до квадратных симметричных размеров вырезав по максимуму центральную часть из прямоугольного оригинала...
У него API на порядок удобнее того же GD. В последний раз я с картинками работал больше года назад, так что не помню уже толком ничего. Знаю, что я кроп с ресайзом делал в 3 строки. В инете полно гайдов на эту тему, посмотрите - найдете все.
 
My status
 Top
Serpanok
Отправлено: 06 Октября, 2011 - 15:05:16
Post Id


Частый гость


Покинул форум
Сообщений всего: 133
Дата рег-ции: Февр. 2011  
Откуда: Красный Лиман, Украина


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




Спс за советы, буду учить ImageMagick ;)
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Apache и другие веб-серверы »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB