Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Обсуждение общих технических вопросов > Общие вопросы

Ответ
 
Опции темы Опции просмотра
Старый 12.06.2006, 16:56   #1
Uznick
Продвинутый
 
Регистрация: 03.06.2006
Адрес: Moscow, Russia
Сообщений: 40
Отправить сообщение для Uznick с помощью ICQ
По умолчанию

всё кончилось тем, что написал ещё один скрипт, который уменьшает картинку с помощью Gd и выводит её браузеру.
Uznick вне форума   Ответить с цитированием
Старый 12.06.2006, 20:38   #2
void
Senior Member
 
Аватар для void
 
Регистрация: 14.03.2006
Адрес: Russia, Penza
Сообщений: 1,504
Отправить сообщение для void с помощью ICQ
По умолчанию

хе... вместо того, чтобы чуть почитать доки (TSRef) и/или покопаться в коде)
cObject->IMAGE($conf), где
$conf = array(
"file" = $my_file,
"file." = array(
"maxW" = $my_width,
"maxH" = $my_height
)
);

за код не очень уверен, но что-то похожее.
__________________
TYPO3 FAQ
void вне форума   Ответить с цитированием
Старый 12.06.2006, 21:17   #3
Uznick
Продвинутый
 
Регистрация: 03.06.2006
Адрес: Moscow, Russia
Сообщений: 40
Отправить сообщение для Uznick с помощью ICQ
По умолчанию

К сожалению, я только начинаю разбираться с typo3, поэтому пока не совсем понял что можно сделать через TS и в какую сторону копать в таких ситуациях

У меня при вызове $cObject->IMAGE($conf) вылезает Fatal error: Call to a member function on a non-object.

На сколько я понимаю, у меня нет объекта IMAGE. Но как задать его, создавая extension через kickstarter, я не знаю. Да и не только через kickstarter, тоже.
Uznick вне форума   Ответить с цитированием
Старый 12.06.2006, 22:37   #4
Pavel Antonov
Senior Member
 
Аватар для Pavel Antonov
 
Регистрация: 01.10.2004
Адрес: Россия, Москва
Сообщений: 1,204
Отправить сообщение для Pavel Antonov с помощью ICQ
По умолчанию

в плагин текущий объект типа tslib_cObj передается в переменную cObj.

Вызывать в методах плагина нужно так:
Код:
$this->cObj->IMAGE($conf)
__________________
Павел Антонов
Rich Media Development Ltd.
Блог: http://codeline.richmd.ru/
Pavel Antonov вне форума   Ответить с цитированием
Старый 13.06.2006, 14:49   #5
Uznick
Продвинутый
 
Регистрация: 03.06.2006
Адрес: Moscow, Russia
Сообщений: 40
Отправить сообщение для Uznick с помощью ICQ
По умолчанию

Наверное я что-то принципиальное не понимаю.

Я создал два экстеншна.

В первом полностью описал таблицы базы.

Во втором уже во фронтенде -- делаю выборку из базы $query=$GLOBALS['TYPO3_DB']->SELECTquery() и так далее.

Из базы я получаю название файла с картинкой.

Далее с этой картинкой произвожу манипуляции по уменьшению.

Я не понимаю, куда можно дописать $this->cObj->IMAGE($conf), т.к. $this->cObj->IMAGE не существует.
У меня нету объекта IMAGE, у меня есть поле из базы с названием картинки.

Нашёл, что-то подобное в экстеншне lz_gallery, но там, как я понял из кода, всё тоже делается вручную через imagemagick.
Uznick вне форума   Ответить с цитированием
Старый 13.06.2006, 15:19   #6
void
Senior Member
 
Аватар для void
 
Регистрация: 14.03.2006
Адрес: Russia, Penza
Сообщений: 1,504
Отправить сообщение для void с помощью ICQ
По умолчанию

Работающий код
PHP код:
foreach ($section_row as $row)
            {
                
$img_conf = array ('file' => 'uploads/tx_sunautomation/'.$row['image'],
                        
'file.' => array (
                            
'maxW' => 100,
                            
'maxH' => 100)
                            );
                
$img $this->cObj->IMAGE($img_conf);            
                
$replace_array = array(
                    
'###RECORD_TITLE###' => $row['title'],
                    
'###RECORD_IMG###' => $img,
                    
'###RECORD_DESCRIPTION###' => $row['description'],
                    
'###RECORD_LINK###' => $this->pi_getPageLink($row['dbmount'])
                    );
                
$block_content.=$this->cObj->substituteMarkerArray($sun_school_block,$replace_array);
            } 
IMAGE - это метод, которая возвращает нужный вам тэг <img> со всеми параметрами.
Причем если картинку нужно как-то изменить, это будет произведено и src будет уже на измененную картинку.
__________________
TYPO3 FAQ
void вне форума   Ответить с цитированием
Старый 13.06.2006, 16:23   #7
Uznick
Продвинутый
 
Регистрация: 03.06.2006
Адрес: Moscow, Russia
Сообщений: 40
Отправить сообщение для Uznick с помощью ICQ
По умолчанию

Спасибо.

Теперь картинка выводится, но неизменённого размера

Код:
foreach ($clientlist as $client) {
   $img_conf = array ('file' => 'uploads/tx_portfoliotables/'.$client['image'],
                             'file.' => array (
                             'maxW' => 50,
                             'maxH' => 50
                             )
                            );                             
print $img = $this->cObj->IMAGE($img_conf);            
}
В результате имею <img src="uploads/tx_portfoliotables/image.jpg" width="100" height="100" border="0" alt="" title="" />

Последний раз редактировалось Uznick; 13.06.2006 в 16:25
Uznick вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 21:11.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория