Не работает resize картинок

Тема в разделе "PHP", создана пользователем sarkis, 4 ноя 2014.

Статус темы:
Закрыта.
Модераторы: latteo
  1. sarkis

    sarkis

    Регистр.:
    27 фев 2014
    Сообщения:
    247
    Симпатии:
    36
    Здравствуйте ..Имеется скрипт ..Принцип работы : берет все файлы картинок из папки big , изменяет размер и сохраняет в папку small ..Вроде как скрипт работал (точно не помню) ,а сейчас выдает ошибку

    Warning: imagejpeg(../test/big/:( failed to open stream: No such file or directory in A:\openserver\OpenServer\domains\koty\test\resize.php on line 22

    я так понимаю , либо с путями что-то не так (хотя уже по-разному пробовал) либо функция не фурычит ..Просьба компетентных людей объяснить причину ..Спасибо ..

    Скрипт находится в папке TEST (она в корне лежит)
    Код:
    <?php
    class SimpleImage {
       var $image;
       var $image_type;
       function load($filename) {
          $image_info = getimagesize($filename);
          $this->image_type = $image_info[2];
          if( $this->image_type == IMAGETYPE_JPEG ) {
             $this->image = imagecreatefromjpeg($filename);
          } elseif( $this->image_type == IMAGETYPE_GIF ) {
             $this->image = imagecreatefromgif($filename);
          } elseif( $this->image_type == IMAGETYPE_PNG ) {
             $this->image = imagecreatefrompng($filename);
          }
       }
       function save($filename, $image_type=IMAGETYPE_JPEG, $compression=100, $permissions=null) {
          if( $image_type == IMAGETYPE_JPEG ) {
             imagejpeg($this->image,$filename,$compression);
          } elseif( $image_type == IMAGETYPE_GIF ) {
             imagegif($this->image,$filename);
          } elseif( $image_type == IMAGETYPE_PNG ) {
             imagepng($this->image,$filename);
          }
          if( $permissions != null) {
             chmod($filename,$permissions);
          }
       }
       function output($image_type=IMAGETYPE_JPEG) {
          if( $image_type == IMAGETYPE_JPEG ) {
             imagejpeg($this->image);
          } elseif( $image_type == IMAGETYPE_GIF ) {
             imagegif($this->image);
          } elseif( $image_type == IMAGETYPE_PNG ) {
             imagepng($this->image);
          }
       }
       function getWidth() {
          return imagesx($this->image);
       }
       function getHeight() {
          return imagesy($this->image);
       }
    
       function resizeToWidth($width) {
          $ratio = $width / $this->getWidth();
          $height = $this->getheight() * $ratio;
          $this->resize($width,$height);
       }
     
       function resize($width,$height) {
          $new_image = imagecreatetruecolor($width, $height);
          imagecopyresampled($new_image, $this->image, 0, 0, 0, 0, $width, $height, $this->getWidth(), $this->getHeight());
          $this->image = $new_image;
       }
    }
     
       foreach (glob("../test/big/*.jpg") as $pick) {
       $image = new SimpleImage();
       $image->load(''.$pick.'');
       $image->resizeToWidth(100);
       $pick=explode('/',$pick);
       $image->save('../test/small/'.$pick[5].'');
         
          }
    ?>
    дополню :
    если файл формата JPEG , то ошибка не появляется ,НО, в папку не сохраняет ничего
    прикрепляю их

    UPD
    разобрался ..Неправильно в конце номер массива стоял
     

    Вложения:

    Последнее редактирование модератором: 4 ноя 2014
Статус темы:
Закрыта.