PHP - создание Thumb - Галлерея

Тема в разделе "Как сделать...", создана пользователем NetStranger, 26 май 2009.

Статус темы:
Закрыта.
  1. NetStranger

    NetStranger Постоялец

    Регистр.:
    16 сен 2008
    Сообщения:
    124
    Симпатии:
    1
    Подскажите как мне доделать скриптик, вот написал с нуля под CI
    Код:
    $data = directory_map('./img/photo/'.$page);
                 foreach ($data as $val => $img) // Вывод основных картинок в директории пейдж
                            {
                                   if (!is_array($img))  // вывод самой картинки
                                    {
                                    $must_thumb = '';
                                            foreach ($data['thumbs'] as $val2 => $img2) // генерация путей для возможного thumb
                                                 {
                                                      if (substr($img2, 0, -10) == substr($img, 0, -4))
                                                      {
                                                           $must_thumb = '/img/photo/'.$page.'/thumbs/'.$img2;
                                                      }
                                                 }
                                    $thumb = '/img/photo/'.$page.'/thumbs/'.substr($img, 0, -4)."-thumb".substr($img, -4); // генерация положенного тумбнейла
                                    echo '<h1>'.$must_thumb.'='.$thumb.'</h1>';
                                            if ($must_thumb != $thumb) // проверка на существование thumb
                                            { // создание тумнейла если нет
                                                $config['image_library'] = 'gd2'; // выбираем библиотеку
                                                $config['source_image'] = './img/photo/'.$page.'/'.$img;
                                                $config['create_thumb'] = TRUE; // ставим флаг создания эскиза
                                                $config['maintain_ratio'] = TRUE; // сохранять пропорции
                                                $config['width'] = 150; // и задаем размеры
                                                $config['height'] = 100;
                                                $config['thumb_marker'] = "-thumb";
                                                $config['new_image'] = './img/photo/'.$page.'/thumbs/'.$img;
    
                                                $this->load->library('image_lib', $config); // загружаем библиотеку
    
                                                if ( ! $this->image_lib->resize())
                                                {
                                                    echo $this->image_lib->display_errors();
                                                }
    
                                                echo "<img src='".$thumb."' />";
                                                echo '<br />';
                                            }
                                            else
                                            {
                                                echo "<img src='".$thumb."' />";
                                                echo '<br />';
                                            }
    
    
                                    }
    
                            }
    Скрипт работает но не так как надо, если в папке 1 картинка, он ее сделает, а если 2 и более он на следующие картинки выдает ошибку, но превью сам делает на след картинку, то есть за каждую загрузку страницы по 1 картинке делает, хотя я же вроде цикл создал... вообщем я в тупике, подскажите как это реализовать... или же такие вещи через аякс делаются??
     
  2. -=Xardas=-

    -=Xardas=-

    Регистр.:
    17 сен 2008
    Сообщения:
    250
    Симпатии:
    58
    directory_map() что за функция? Выложите ее код.
     
  3. NetStranger

    NetStranger Постоялец

    Регистр.:
    16 сен 2008
    Сообщения:
    124
    Симпатии:
    1
    да все уже разобрался надо было просто запуск библиотеки вынести во вне цикла , и нициировать конфиг уже в самом цикле и все заработало..
    -=Xardas=-, это CodeIgniter , если инетерсно почитай о нем, там много интересных функций.
     
Статус темы:
Закрыта.