Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - Гаррилл

Страницы: [1] 2 3 ... 15
1
Флейм / Про вывод ошибок.
« : 07 Мая 2003, 21:53:37 »
Цитировать
Xander:
Я достаточно убедителен?

Однозначно.

2
Флейм / Про вывод ошибок.
« : 07 Мая 2003, 20:14:53 »
RomikChef
[OFF]Ромик, я вас не понимаю. Что за мания поругаться со всеми вся? Ведь вы старше меня больше, чем в два раза. Зачем пытаетесь всех втоптать в грязь? Притом в данном случае необоснованно.[/OFF]
Цитировать

Надо писать настолько правильно, чтобы этот параметр не имел значения.
RomikChef: глупость

Аргументы в студию. Хоть один?

3
Флейм / Про вывод ошибок.
« : 07 Мая 2003, 19:41:44 »
RomikChef
[OFF]Чё, совсем не вьезжаешь? Причём тут мои скрипты? И кривые ли они? Проверял? Они в этом топике не обсуждаются.[/OFF]
У человека ошибки не выводятся. А ему надо найти их (я так понимаю, парсюки) для редактирования.
Цитировать
на рабочем сервере должно быть off

Надо писать настолько правильно, чтобы этот параметр не имел значения.

4
Цитировать
Tronyx:
просто у меня уже давно свой компилятор шаблонов

Опытом не поделишься? :)

5
Цитировать
Tronyx:
Это шутка, не принимай всерьёз.

Цитировать
Гаррилл:
Я нормальный :) Орать, что обиделся не буду

Цитировать
Tronyx:
единственное что могу сказать, это то что надо вынести функции компиляции в отдельный файл, который будет подключаться только если нужна компиляция шаблона.

А зафиг? Функция-компилировщик занимает всего 72 строчки, а ради этого баловаться require_once не стоит. Это в Smarty - 53 кб, выгодно подключать, когда надо.

6
Флейм / Про вывод ошибок.
« : 07 Мая 2003, 18:54:37 »
Таря, в php.ini поставь display_errors = On, перезагрузи сервер, а в скрипте error_reporting(E_ALL). И будет тебе счастье, только не утони в куче выводимых ошибок :))

7
[OFF]Географию учил. Два дня не спал.[/OFF]
Сначала это был phplib-овский темплейт, потом phpbb-шники модифицировали под себя, потом я под себя. От предыдущего phpbb-шного в нынешнем осталось процентов 20.
Цитировать
Tronyx:
Впринципе это без особых проблем можно сделать и на "php шаблонах".

Угу. Но это не то. Сам же понимаешь :)
Цитировать
Tronyx:
Им можно сказать что это такая "специальная" шаблонная фича,

Так нельзя. Надо быть с чистой совестью :) .
Цитировать
Tronyx:
До урезаного Smarty ещё очень далеко, а вот улутченый FastTemplate

Задача была не быть сопоставимым со Smarty, а сделать быстрый и довольно-таки функциональный шаблонизатор с самыми необходимыми функциями. А необходимыми для проекта были ещё и инклуды, и ифы, естественно блоки с неогр. вложенностью + для удобства сделал функцию array_select_form, чтобы создавать селект-формы любой сложности (хоть деревья или multiply-и).
Нормально ли идея на PHP реализована? Нет ли кривого кода?

8
Цитировать
RomikChef:
меняется три файла: шапка, ноги и таблица стилей.

Если абстрактно рассуждать, то всё просто. Но на деле, когда нужна и функциональность, и скорость, и удобство не всё так просто. А, например, мне шапки, тела, футера ох как мало. Мне нужна ещё визуальная генерация деревьев, и дин. блоки и возможность создавать колонки и ленты путём прописывания 6 строк.
Цитировать
повторяю. не вижу разницы. вряд ли ее и дизайнеры заметят.

Насчёт долларов/недолларов. А какая здесь уже разница? Всё равно всё вместе парсится один раз. Тем более, чтобы отпарсить $ и {} пишешь один и тот же код. Соглашусь, что это всё фигня. Но не фигня заключается в том, что ему легче писать
{gav_gav}
, чем
- (бред, а не пример :)) Но всякие мои дружки-дизайнеры не любят писать PHP, только html (я же не виноват).
О! Нашёл в чём шаблоны проще :))
легче для понимания, чем for($i=0; $i

9
Tronyx
Тут есть тектовая версия
http://kirill-gar.fromru.com/template.php (смотреть надо html-source)
Есть и
http://kirill-gar.fromru.com/template.zip
Цитировать
ZIP архив и закинуть по FTP к себе на сервер это серьёзная преграда

Там нет FTP.
RomikChef
Я тоже. Но это навязали временем. К этому, может быть, привыкли дизайнеры. И если уж на то пошло, то вообще можно без шаблонизаторов обходиться. Но как же быть при лёгкой смене дизайна, смене скинов страницы? Без шаблонов фигово. Да и, если так выразиться, не модно :)
Хотя мой вариант при кэшировании работает абсолютно также, как и echo в теле главного скрипта, т.к. генерится нормальный код, который быстро выводится.
Впрочем, рабочий сайт покажу, но ближе к июлю.

10
Морочиться с ssh и cvs нет времени - там дира на sourceforge с ph* долго открывается (проектов на php много), а мне надо к экзамена выпускным/ЕГЭ/вступительным готовиться. Могу на мыло выслать.

11
Xander
Я, если честно (может быть, стыдно должно быть), не знаю, как работает SSI, я его только юзать умею.
А отличается, наверное, и присутствием только одного php.

12
Вот и я сделал template engine. Начинал не с нуля, а с исходников от phpbb.
Переделал компилировщик (теперь он генерит нормальный php), добавил такую функциональность, как , .
С динамическими блоками и обычными вариаблами работает, как раньше с ИФами и инклудами так:



main_tpl
.tpl
<!-- IF isset({var:IS_ADMIN}) -->
	
<!-- INCLUDE 
SOME_ADMIN_BOX -->
<!-- ELSEIF 
some_php_function({var:ANY_VARIABLE}) < .... {var:TRALI_VALIetc PHP -->
	
<!-- 
BEGIN block1 -->
	
	
<!-- IF isset({var:
block1.VALUE}) -->
	
	
//всякий хипер текст маркап лэнгвич
	
	
<!-- ENDIF -->
	
<!-- 
END block1 -->
<!-- ENDIF -->


include.
tpl
//всякий хипер текст маркап лэнгвич


php.php
<?php
$template 
= new Template($default_skin_dir$default_lang_dir);

$template->set_filenames(array(\'MAIN_TPL\' => \'main_tpl\'));

if(авторизован, как админ)
{
	
$template->assign_vars(array(\'IS_ADMIN\' => TRUE);

	
$template->set_filenames(array(\'SOME_ADMIN_BOX_HANDLE\' => \'blocks/include\'));

	
$template->assign_include(\'SOME_ADMIN_BOX\', \'SOME_ADMIN_BOX_HANDLE\', 1);
}
else if(другие условия)
{
	
$template->assign_block_vars(\'block1\', array(\'VALUE\' => \'какой-нибудь валуй\'));
}

$template->pparse(\'MAIN_TPL\');
?>




Т.е. в ИФах можно использовать пхп-код и значения {var:IS_ADMIN} или в блоках {var:block1.VALUE} для различных
condititons. Они задаются тем же assign_vars, но не добавляется
Теперь о технологии парсинга. Тот же eval или require_once при кэшировании.
При использовании инфа берётся из нескольких tpl, они все становятся одним uncompiled_code
с помощью str_replace-ов. Притом конфликтов с вложенностью нет, т.к.
assign_include(\'   [str:some variable in tpls]\', \'    [str:handle of file content]\', \'    [int: level of replacing]\');
Т.е. level того шаблона в котором меньше, чем у того, в котором контент для .
В общем создаётся шаблон, потом один раз прогоняется compile-ом и eval-ится.

С кэшированием такого нет. так и инклудит файлы. Т.к. у разных страниц сайта мошгут быть разные подключения. Зашивать железно или
перекэшировать каждый раз нехорошо. А с несколькими require_once нормально.
Ещё фича этих инклудов:

$template
->assign_include(\'SOME_ADMIN_BOX\', \'SOME_ADMIN_BOX_HANDLE\', 1);
$template->assign_include(\'SOME_ADMIN_BOX\', \'SOME_ADMIN_BOX_HANDLE_2\', 1);

будет инклудить в один 2 файла. Мне, например, это удобно для создания side-boxов (меню, ниже опрос, ниже баннер).

На локалке работает гораздо быстрее, чем раньше.
Есть ли у вас пожелания/замечания/критика? Я нормальный :)) Орать, что обиделся не буду :))
Кстати, кодил это где-то неделю, а продумывал где-то ... две.

http://kirill-gar.fromru.com/template.zip

13
PHP / постраничный вывод
« : 29 Марта 2003, 18:52:00 »
Цитировать
Merle:
хе... осторожней...... уж очччень вы раздуты товарисЧ!... не лопните :о)

Да кто ты такой? Хамьё.
Кажется, тебе сюда http://faq.phpclub.net/

14
vBulletin / Выбор форума
« : 14 Марта 2003, 15:34:06 »
alex007
Не спорю, vB намного функциональней, но сделан он криво по сравнению с phpbb, работает медленнее.
Из пречисленных тобою пунктов не все очень необходимые. А в phpbb стандартном всё самое необходимое, это уже в новой версии они покосячат под vB по части функциональности и форум их при этом быстрее станет.

15
vBulletin / Выбор форума
« : 13 Марта 2003, 19:14:43 »

Страницы: [1] 2 3 ... 15