Блог старого компьютера

Блог старого компьютера


Главная PHP Делаем на лету миниэскиз изображения PHP

Делаем на лету миниэскиз изображения PHP

19.01.2013 11:10 Администратор PHP
Печать PDF
Не так давно я заметил, что стал для мгновенного создания миниэскизов  использовать скрипт Smart Image Resizer 1.4.1. Думаю многие с ним сталкивались. Он даже используется в некоторых модулях движка joomla. К примеру создание миниэскизов в модуле mod_thumbsup использует именно этот срипт. Сообственно оттуда я его когда то и взял.  Так же данный скрипт можно найти на просторах интернета.

Особо описывать как обращаться с этим сриптом наверное нет необходимости так как про это описано в этом файле в комментриях. Есть несколько способов использования этого скрипта, лично я использую вот такой:

<img src="/components/com_portfel/image.php/1.jpg?parameters=@width=125@height=125@cropratio=4:3@quality=100@image=/images/stories/jobs.jpg">

Думаю передаваемые параметры всем ясны, это ширина, высота, соотношение, качество и путь до изображения. Все эти параметры мы передаем файлу image.php который и является у нас сриптом.

Особо ничего сложного нету, но данному срипту нужна папка в которую он будет складывать кеш миниэскизов. Так что если у вас данный скрипт не выводит картинку то первым делом проверьте правильность передаваемых параметром. Если все верно и скрипт все равно не выводит изображение то попробуйте в адресуню строку вставить путь до самого файла image.php с передаваемыми параметрами. После чего скорее всего вы увидите примерно такие ошибки:

Warning: mkdir() [function.mkdir]: No such file or directory in Z:\home\rem\www\components\com_portfel\image.php on line 369

Warning: Cannot modify header information - headers already sent by (output started at Z:\home\rem\www\components\com_portfel\image.php:369) in Z:\home\rem\www\components\com_portfel\image.php on line 374
Error: the cache directory is not readable

 Из последнего сообщения Error: the cache directory is not readable становится понятно что не правильно указана папка для кеширования. Ошибка про Warning: Cannot modify header information - headers already sent by появляется по причине того нельзя выводить информацию перед установкой хедеров.

Если ошибки у вас такие то просто настройте путь до папки с кешем. Для этого откройте файл image.php и измените в 74 строке в первом параметре функции str_replace путь на ваш путь до файла image.php.

После этих действий все у вас должно заработать.

Так же прикрепляю свой файл  со скриптом Smart Image Resizer 1.4.1, так как возможно у вас другая версия и все что я описал выше работать не будет.

Добавить комментарий


Защитный код
Обновить

Поиск

Голосование

Что Вы думаете на счет битрикса?
 

Все материалы раздела