Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Systemy szablonów _ [inny]Smarty - jak kompilować pliki?

Napisany przez: beel 27.07.2011, 19:00:02

Witam,

Na serwerze poprawnie jest zainstalowane Smarty, są gotowe raporty SQL zrobione i wyświetlone na stronie WWW. Z tego co widzę dla każdego raportu jest plik raportXX.tpl, gdzie XX to numer raportu. Z tego co widzę jest to plik HTML'owy - pewnie szablon. Mam też kod PHP odpowiedzialny za pobranie danych z bazy i ich wyświetlenie. Jednak jest jeszcze coś takiego jak folder templates_c i tam są pliki o dziwnych nazwach, typu:
%%C4^C40^C402CD20%%raportXX.tpl.php
%%CD^CDE^CDED6FC4%%formularzXX.tpl.php

W każdym z tych plików na początku jest komentarz:

Cytat
/* Smarty version 2.6.20, created on 2011-01-12 12:23:11
compiled from formularzXX.tpl */

Więc domyślam się, że na podstawie wspomnianego pliku .tpl zostały one skompilowane. Pytanie jak?

Napisany przez: mkopytko 27.07.2011, 19:05:03

Smarty to system szablonów i on sobie kompiluje pliki szablonów (tpl) na pliki php które są trzymane w katalogu templates_c (w tym katalogu nic nie zmieniaj)

P.S. Zauważ ze pliki tpl to nie jest sam HTML tylko znajdują się tam znaczniki smarty (przeważnie w nawiasach klamrowych)

Napisany przez: beel 27.07.2011, 19:38:52

OK, wiem, że jest to system szablonów i masz rację, w tpl nie jest to czysty HTML. Ale pytanie wciąż jak skompilować mój nowy plik tpl, aby powstał "odpowiednik" w templates_c?

Napisany przez: mkopytko 27.07.2011, 19:42:28

Automatycznie się kompilują. Napisz co chcesz dokładnie zrobić smile.gif to może będziemy umieli Ci pomóc. Wszystkie zmiany wprowadzasz w .tpl

Napisany przez: beel 27.07.2011, 20:36:01

Automatycznie, w którym momencie?

Napisany przez: zend 27.07.2011, 20:51:43

W momencie w którym chcesz wyświetlić szablon Smarty sprawdza czy szablon nie został już skompilowany, jeśli jest gotowy, korzysta z niego, jeśli nie jest gotowy kompiluje i ładuje skompilowany szablon

  1. $smarty->display('index.tpl');

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)