Jump to content

Recommended Posts

Posted (edited)

Добрый день. У меня на странице каталога появляется ряд ошибок. Они возникли после того, как я боролась с другой ошибкой и заменила некоторые папки на хостинге. Ошибку исправила, все работает, но вылезла эта проблема. При этом, все фото на своих местах и корректно отображаются.

 

Я новичок и прошу терпения. Пишите, пожалуйста, подробно)) На формух смотрела, что нужно прописать права, но к сожалению не пойму, как и куда.

 

Кэш чистела через админку и удалением содержимого из папки с кэшем изображений

 

Цитата

Warning: imagecreatetruecolor(): Invalid image dimensions in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 86Warning: imagecolorallocate() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 94Warning: imagefilledrectangle() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 97Warning: imagecopyresampled() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 99Warning: imagecreatetruecolor(): Invalid image dimensions in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 86Warning: imagecolorallocate() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 94Warning: imagefilledrectangle() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 97Warning: imagecopyresampled() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 99Warning: imagecreatetruecolor(): Invalid image dimensions in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 86Warning: imagecolorallocate() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 94Warning: imagefilledrectangle() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 97Warning: imagecopyresampled() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 99Warning: imagecreatetruecolor(): Invalid image dimensions in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 86Warning: imagecolorallocate() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 94Warning: imagefilledrectangle() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 97Warning: imagecopyresampled() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 99Warning: imagecreatetruecolor(): Invalid image dimensions in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 86Warning: imagecolorallocate() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 94Warning: imagefilledrectangle() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 97Warning: imagecopyresampled() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 99Warning: imagecreatetruecolor(): Invalid image dimensions in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 86Warning: imagecolorallocate() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 94Warning: imagefilledrectangle() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 97Warning: imagecopyresampled() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 99

 

Edited by valrietta

Share this post


Link to post
Share on other sites

посмотрите в настройки шаблона, заданы ли размеры миниатюр.

Share this post


Link to post
Share on other sites
1 минуту назад, Vetroff сказал:

посмотрите в настройки шаблона, заданы ли размеры миниатюр.

 

Да, вот: http://joxi.ru/krDgW9DhJ95E5A

Share this post


Link to post
Share on other sites
8 минут назад, Vetroff сказал:

посмотрите в настройки шаблона, заданы ли размеры миниатюр.

 

Вот код из image.php:

Цитата
<?php
class Image {
   private $file;
   private $image;
   private $info;

   public function __construct($file) {
      if (file_exists($file)) {
         $this->file = $file;

         $info = getimagesize($file);

         $this->info = array(
            'width'  => $info[0],
            'height' => $info[1],
            'bits'   => $info['bits'],
            'mime'   => $info['mime']
         );

         $this->image = $this->create($file);
      } else {
         exit('Error: Could not load image ' . $file . '!');
      }
   }

   private function create($image) {
      $mime = $this->info['mime'];

      if ($mime == 'image/gif') {
         return imagecreatefromgif($image);
      } elseif ($mime == 'image/png') {
         return imagecreatefrompng($image);
      } elseif ($mime == 'image/jpeg') {
         return imagecreatefromjpeg($image);
      }
   }

   public function save($file, $quality = 90) {
      $info = pathinfo($file);

      $extension = strtolower($info['extension']);

      if (is_resource($this->image)) {
         if ($extension == 'jpeg' || $extension == 'jpg') {
            imagejpeg($this->image, $file, $quality);
         } elseif($extension == 'png') {
            imagepng($this->image, $file);
         } elseif($extension == 'gif') {
            imagegif($this->image, $file);
         }

         imagedestroy($this->image);
      }
   }

   public function resize($width = 0, $height = 0, $default = '') {
      if (!$this->info['width'] || !$this->info['height']) {
         return;
      }

      $xpos = 0;
      $ypos = 0;
      $scale = 1;

      $scale_w = $width / $this->info['width'];
      $scale_h = $height / $this->info['height'];

      if ($default == 'w') {
         $scale = $scale_w;
      } elseif ($default == 'h'){
         $scale = $scale_h;
      } else {
         $scale = min($scale_w, $scale_h);
      }

      if ($scale == 1 && $scale_h == $scale_w && $this->info['mime'] != 'image/png') {
         return;
      }

      $new_width = (int)($this->info['width'] * $scale);
      $new_height = (int)($this->info['height'] * $scale);         
      $xpos = (int)(($width - $new_width) / 2);
      $ypos = (int)(($height - $new_height) / 2);

      $image_old = $this->image;
      $this->image = imagecreatetruecolor($width, $height);

      if (isset($this->info['mime']) && $this->info['mime'] == 'image/png') {       
         imagealphablending($this->image, false);
         imagesavealpha($this->image, true);
         $background = imagecolorallocatealpha($this->image, 255, 255, 255, 127);
         imagecolortransparent($this->image, $background);
      } else {
         $background = imagecolorallocate($this->image, 255, 255, 255);
      }

      imagefilledrectangle($this->image, 0, 0, $width, $height, $background);

      imagecopyresampled($this->image, $image_old, $xpos, $ypos, 0, 0, $new_width, $new_height, $this->info['width'], $this->info['height']);
      imagedestroy($image_old);

      $this->info['width']  = $width;
      $this->info['height'] = $height;
   }

   public function watermark($file, $position = 'bottomright') {
      $watermark = $this->create($file);

      $watermark_width = imagesx($watermark);
      $watermark_height = imagesy($watermark);

      switch($position) {
         case 'topleft':
            $watermark_pos_x = 0;
            $watermark_pos_y = 0;
            break;
         case 'topright':
            $watermark_pos_x = $this->info['width'] - $watermark_width;
            $watermark_pos_y = 0;
            break;
         case 'bottomleft':
            $watermark_pos_x = 0;
            $watermark_pos_y = $this->info['height'] - $watermark_height;
            break;
         case 'bottomright':
            $watermark_pos_x = $this->info['width'] - $watermark_width;
            $watermark_pos_y = $this->info['height'] - $watermark_height;
            break;
      }

      imagecopy($this->image, $watermark, $watermark_pos_x, $watermark_pos_y, 0, 0, 120, 40);

      imagedestroy($watermark);
   }

   public function crop($top_x, $top_y, $bottom_x, $bottom_y) {
      $image_old = $this->image;
      $this->image = imagecreatetruecolor($bottom_x - $top_x, $bottom_y - $top_y);

      imagecopy($this->image, $image_old, 0, 0, $top_x, $top_y, $this->info['width'], $this->info['height']);
      imagedestroy($image_old);

      $this->info['width'] = $bottom_x - $top_x;
      $this->info['height'] = $bottom_y - $top_y;
   }

   public function rotate($degree, $color = 'FFFFFF') {
      $rgb = $this->html2rgb($color);

      $this->image = imagerotate($this->image, $degree, imagecolorallocate($this->image, $rgb[0], $rgb[1], $rgb[2]));

      $this->info['width'] = imagesx($this->image);
      $this->info['height'] = imagesy($this->image);
   }

   private function filter($filter) {
      imagefilter($this->image, $filter);
   }

   private function text($text, $x = 0, $y = 0, $size = 5, $color = '000000') {
      $rgb = $this->html2rgb($color);

      imagestring($this->image, $size, $x, $y, $text, imagecolorallocate($this->image, $rgb[0], $rgb[1], $rgb[2]));
   }

   private function merge($file, $x = 0, $y = 0, $opacity = 100) {
      $merge = $this->create($file);

      $merge_width = imagesx($merge);
      $merge_height = imagesy($merge);

      imagecopymerge($this->image, $merge, $x, $y, 0, 0, $merge_width, $merge_height, $opacity);
   }

   private function html2rgb($color) {
      if ($color[0] == '#') {
         $color = substr($color, 1);
      }

      if (strlen($color) == 6) {
         list($r, $g, $b) = array($color[0] . $color[1], $color[2] . $color[3], $color[4] . $color[5]);   
      } elseif (strlen($color) == 3) {
         list($r, $g, $b) = array($color[0] . $color[0], $color[1] . $color[1], $color[2] . $color[2]);    
      } else {
         return false;
      }

      $r = hexdec($r); 
      $g = hexdec($g); 
      $b = hexdec($b);    

      return array($r, $g, $b);
   }  
}
?>

 

В каталоге та большая ошибка, а в разделах вот эта:

 

Цитата

Warning: imagecreatetruecolor(): Invalid image dimensions in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 86Warning: imagecolorallocate() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 94Warning: imagefilledrectangle() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 97Warning: imagecopyresampled() expects parameter 1 to be resource, boolean given in /home/c/cj36568/copy_podogrevanew/public_html/system/library/image.php on line 99

 

Share this post


Link to post
Share on other sites
1 час назад, Dimasscus сказал:

 

Проблема в том, что изменения которые я вношу в .../catalog/controller/product/product.php не влияют на сайт. Я удалила все содержимое, а потом вернуло, но сайт не отреагировал. Та же проблема с /catalog/controller/product/category.php

Share this post


Link to post
Share on other sites

Эта ошибка появляется из-за категорий товаров. У меня 6 разделов, я их скрыла и ошибка на странице исчезла, а когда активировала, они снова появились

Share this post


Link to post
Share on other sites

Если удалить изображение из категории, ошибка остается

Share this post


Link to post
Share on other sites
Posted (edited)

Еще увидела такое - когда захожу через админку  категорию, жму - загрузить картинку, папка image пуста. Хотя все картинки на сайте отображаются и в папке есть данные, если посмотреть через хостинг.

 

Путь: /image/cache/data/net-foto-240x240.jpg

Edited by valrietta

Share this post


Link to post
Share on other sites

Ошибка решена! Прочитала, где-то, что нужно удалить vqmod. Я его удалила, но у меня умер сайт, но я заранее скопировала его и потом вставила снова. Сайт ожил, ошибки нет. Магия. Надеюсь, кому-нибудь эта тема поможет.

 

Всем спасибо! 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Similar Content

    • By OldAine
      По умолчанию Opencart открывает картинки товаров в том размере который задан в админке, т.е. если картина 200х200 а в админке 500х500, то она тупо и очень некрасиво растягивается до указанного размера. Т.к. это не хорошо, я залез в systemlibraryimage.php и поставил ">=" , вместо "==", вот так:
      $scale = min($width / $this->info['width'], $height / $this->info['height']);if ($scale >= 1) {return;}Теперь картинки в fancybox открываются правильно! масштабирование происходит по размеру загружаемого фото, НО! появилась проблема с прозрачностью загружаемых png файлов:Вот что загружаю:

      Вот что вижу на сайте:

      Подскажите пожалуйста что делать, отказываться от png не вариант, сами понимаете...
    • By Aleksandr87
      Версия магазина Version 1.5.1.3
      хостинг - reg.ru
      Проблема в следующем: при попытке изменить настройке магазина в система-настройки-изменить появляется сообщение
      Fatal error: Call to undefined function imagecreatefromgif() in /var/www/u12345678/data/www/tealider.ru/system/library/image.php on line 32
      Последнее, что делал - пытался настроить watermark, удалил его - не помогает.
      В чём может быть ещё проблема?
      В файле image.php
      public function create($image) {
      $mime = $this->info['mime'];
      if ($mime == 'image/gif') {
      return imagecreatefromgif($image); строка 32
      } elseif ($mime == 'image/png') {
      return imagecreatefrompng($image);
      } elseif ($mime == 'image/jpeg') {
      return imagecreatefromjpeg($image);
      }
      }
      Заранее благодарю за помощь
  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.