Не нравятся результаты поиска? Попробуйте другой поиск!

DLE работа с tpl файлами


     24.03.2012    Общие вопросы по PHP    4752

вопрос
Здравствуйте
Столкнулся с проблемой, пишу модуль для DLE и не знаю как вырулить

например есть код
$result = $db->query("SELECT * FROM `".PREFIX."_post` WHERE `category` = 1");
while($row = $db->get_row($result)) {
   print_r($row);
}



как результат работы этого куска кода запихать например в
$tpl->set('{content}', $row);



другими словами нужно чтобы в tpl шаблоне модуля вместо тега {content} было несколько записей из БД

Ответил: Mr. Hyde


Создаешь любой .tpl вида:

{info}
{content}


А в [b.]php:

$tpl->load_template( 'название.tpl' );
$tpl->set("{info}",$info);
$tpl->set("{content}",$content);
$tpl->compile( 'content' );
$tpl->clear();

Комментарии пользователей (4)

ПафНутиЙ
1065

3396 | 2434

ПафНутиЙ - 25 марта 2012 09:17 - Админ

Если для отладки надо - попробуйте вместо print_r:
var_dump($row);

Каков вопрос - таков и ответ. Просто помните об этом.

rashpil
33

232 | 182

rashpil - 25 марта 2012 14:19 - Эксперт

Тут несколько вариантов.

Как правило, в таких случаях подключается шаблон (До цикла) в цикле формируются теги и присваиваются им значения, а в конце приложения вызывается компилятор шаблонов :
$tpl->compile( 'content' );


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

vitaljaa
1 | 1

vitaljaa - 25 марта 2012 17:26 - Юзер

хотел бы увидеть пример
или объясните что и как

rashpil
33

232 | 182

rashpil - 25 марта 2012 18:42 - Эксперт

Открой код любого модуля длешного и смотри :) Вот тебе и пример. Тут как бэ эти истины познаются методом проб и ошибок. Пока не попробуешь, не получится. Если что, пиши в аську 419694531

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы