php_templates 1.7

Ganer

Новичок
кто нибудь может нормально прокоментировать это:
http://www.phppatterns.com/index.php/article/articleview/4/1/1/
 

su1d

Старожил PHPClubа
Ganer, по-моему я там уже ясно и чётко прокомментировал всё по пунктам. сделай на той странице поиск по моему нику =)

Name, я чё-то всё ещё не догоняю вопроса. =) что ты имеешь в виду под словом "разобрать"? что именно надо сделать с тем шаблоном?
 

Name

Новичок
> что ты имеешь в виду под словом "разобрать"?

Что в скрипте написать чтоб правильно было, что то не выходит
Код:
while($row = mysql_fetch_assoc($result)){
     ...... 
     if($row['email']){
	tmpl_iterate($tpl,'ROW/if_email');
	tmpl_set($tpl, 'ROW', $row);
     }
    else
            tmpl_iterate($tpl,'ROW/else_email');
       ......
      и так далее .....
 

laborant

Guest
подскажите, в чем засада:

сначала библиотека не хотела динамически подгружаться так как был включен SAFE MODE, решили этот вопрос, библиотека подгружается

зато выдает ошибку:
Fatal error: Call to undefined function: __tmpl_iterate() in /usr/local/home/vhosts/httpdocs/test.php on line 14

почему так может быть? если бы библиотека не подгрузилась, то выскочила бы сначала ошибка о функции tmpl_open()

я не понимаю
 

sokol

Zavolga.Net
Решил поставить себе этот экстеншн, все сделал как в доках написано. Конфигурится нормально, после make машина выдает вот такое:

/distrib/php/php-4.3.1/ext/templates/templates.c -fPIC -DPIC -o ext/templates/templates.lo /distrib/php/php-4.3.1/ext/templates/templates.c: In function `php_tmpl_init': /distrib/php/php-4.3.1/ext/templates/templates.c:370: `__zend_filename' undeclared (first use in this function) /distrib/php/php-4.3.1/ext/templates/templates.c:370: (Each undeclared identifier is reported only once /distrib/php/php-4.3.1/ext/templates/templates.c:370: for each function it appears in.) /distrib/php/php-4.3.1/ext/templates/templates.c:370: `__zend_lineno' undeclared (first use in this function) /distrib/php/php-4.3.1/ext/templates/templates.c:356: warning: unused variable `tag_type' make: *** [ext/templates/templates.lo] Ошибка 1

Это из последних строчек, до этого все ОК!
OС RedHat Linux 7.3

Я как понял разработчик su1d, подскажи что не так?
 

laborant

Guest
tony2001
Это был ответ на мой вопрос? поясни пожалуйста..
 

tony2001

TeaM PHPClub
обрати внимания на подчеркивания в начале имени функции.
нет такой функции.
 

laborant

Guest
tony2001
хех, это уж в первую очередь проверил, нет там подчеркиваний, это почему-то вылезло при копировании из буфера..
 

laborant

Guest
смотрел, подключен

я же говорю, что очень странно:

во первых, модуль поключен, а если бы он не был подключен, то сначала бы РНР ругнулся бы на функцию tmpl_open();

а во вторых, модуль видно на phpinfo();

=======================
templates
Templates Support - enabled
Engine version - 1.7
Template tag - {tag_name}
Template context - <tmpl:context_name> </tmpl:context_name>

WWW - http://php-templates.sourceforge.net/
=======================
 

laborant

Guest
все благополучно разрешилось, очевидно при copy paste тестового кода из мануала вставились какие-то левые символы, после стирания всего, что стояло перед функцией до начала строки - все заработало
 

sokol

Zavolga.Net
А на мой пост кто-нибудь обратит внимание? Помогите разобраться плз.
 

tony2001

TeaM PHPClub
PHP нормально поставь.
такое впечатление, что он у тебя вообще не стоит, либо установлен, но старый.
 

sokol

Zavolga.Net
2tony2001 - да нет же PHP стоит v.4.3.1, и нормально функционирует. phpinfo() тоже говорит, что у меня стоит 4.3.1.
А что в твоем понимании нормально? Можно не нормально поставить?

До этого стоял 4.1.2, тоже вроде бы не очень старый (>4.0.6).

Причем перекомпириуется нормально с разными параметрами, но как только включаешь --enable-templates, при сборке вот такая фигня вылезает.
 

tony2001

TeaM PHPClub
sokol:
попробуй собрать templates отдельно, без самого РНР.
зайди в ext/templates, выполни
phpize
./configure
make
скажи версию templates и что получится.
 

sokol

Zavolga.Net
ОК. Попробую так. О результатх сообщу вечером, вот только до дома доберусь.
 

sokol

Zavolga.Net
Версия 1.7, все собралось нормально. Модуль templates.so получил, и что теперь? Как обычно?
 

sokol

Zavolga.Net
Не работает:(((
Подключен
extension=templates.so
находится в папке где и все остальные расширения.

При запуске тестового скрипта выдает: не определена ф-я templ_open()

tony2001 - Может его надо как-то активизировать?
 
Сверху