Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [porada]tpl Vs. php
Spirit86
post
Post #1





Grupa: Zarejestrowani
Postów: 607
Pomógł: 23
Dołączył: 8.09.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Witam, pisze właśnie w wolnych chwilach nowy CMS(główne założenia: bezpieczne, szybkie, optymalne klasy, funkcje, łatwy do rozbudowy). Kiedyś wykorzystywałem system theme'ów podobny do tego z PHPNuke / Jportal(praktycznie cały wygląd pobierany z jednego pliku). Jednakże uważam to za łatwe, szybkie, ale jakoś strasznie "prymitywne" (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) w związku z czym mam zamiar napisać parser templates. Coś a'la PHPBB. Wygląd by się składał z plików: header, footer - które były by stałe na wszystkich stronach, oraz plików środka zależnych od strony (np. newsy - main.tpl). Zastanawiam się co jest lepszym rozwiązaniem, mile widziane argumenty (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) .
Pozdrawiam

@moders / admins: nie wiedziałem, w które forum to wcisnąć, to wydało mi się najbardziej odpowiednim. Mam nadzieję, że prosota(?) problemu nie będzie przeszkadzała w tym dziele.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Nievinny
post
Post #2





Grupa: Zarejestrowani
Postów: 134
Pomógł: 0
Dołączył: 27.01.2005
Skąd: Białystok

Ostrzeżenie: (0%)
-----


OK, testowałem kod @chmolu i po poprawkach jest taki:
  1. <?php
  2.  
  3. $A = 'To jest tytul tej strony';
  4. $B = 'To jest nowy naglowek strony';
  5. $C = 'To jest nowa zawartosc sciema';
  6.  
  7. try{
  8. highlight_file( 'pikus.tpl' );
  9. $DOM = new DOMDocument;
  10. $DOM->validateOnParse = true;
  11. $DOM->loadHTMLFile( 'pikus.tpl' );
  12. $DOM->encoding = 'iso-8859-2';
  13. $DOM->getElementsByTagName( 'title' )->item(0)->nodeValue = $A;
  14. $DOM->getElementById( 'naglowek' )->nodeValue = $B;
  15. $DOM->getElementById( 'tresc' )->nodeValue = $C;
  16. print $DOM->actualEncoding . '<br />';
  17. highlight_string( $DOM->saveHTML() );
  18. }
  19. catch( DOMException $E ) {
  20. print $E;
  21. }
  22.  
  23. ?>


A zawartość tplki:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
  3. <meta http-equiv="Content-Type" content="text/html; encoding=utf-8">
  4. <title>{title}</title>
  5. </head>
  6. <div id="naglowek">{header}</div>
  7. <div id="tresc">{content}</div>
  8. </body>
  9. </html>

I działa ładnie, ale gdy w zmiennej A, B, C napiszę jaki kolwiek polski znak diagratyczny (np ą ę ł ó) to się wsypuje, jak to się rozwiąże to będzie dobrze.
Go to the top of the page
+Quote Post

Posty w temacie
- Spirit86   [porada]tpl Vs. php   11.04.2005, 23:05:40
- - Speedy   Dlaczego definiowanie całego theme'a w jednym ...   11.04.2005, 23:28:36
- - CzarnyKot   Ja bym wykorzystal do tego FastTemplate ... daje n...   12.04.2005, 00:14:49
- - bigZbig   Kiedys uzywalem systemu templatow z phpBB. Fajne ...   12.04.2005, 08:14:53
- - bela_666   A ja polecam OPT. Możliwości zblizone do smaty, w ...   12.04.2005, 12:30:09
- - NuLL   łe tam - to i tak wszystko takie same ciągle - zaw...   12.04.2005, 14:22:35
- - Spirit86   @NuLL: całkiem ciekawy pomysł, troche trudniejszy ...   12.04.2005, 14:58:16
- - CzarnyKot   trzeba zauważyć że takie produkty jak smarty zawie...   12.04.2005, 17:28:31
- - ebe   A czy istnieje jakiś system templatów (nie połączo...   12.04.2005, 17:50:49
- - bela_666   Cytat(CzarnyKot @ 2005-04-12 17:28:31)trzeba ...   12.04.2005, 17:52:42
- - CzarnyKot   Cytat(bela_666 @ 2005-04-12 16:52:42)Ale graf...   12.04.2005, 22:37:36
- - bela_666   Cytat(CzarnyKot @ 2005-04-12 22:37:36)Cytat(b...   12.04.2005, 22:56:52
- - xarr   Nie zgadzam sie by grafik nie znajacy sie na smart...   13.04.2005, 07:22:09
- - bigZbig   Cytat(Spirit86)Zresztą sam nie jestem przekonany c...   13.04.2005, 07:34:42
- - bregovic   Cytat(NuLL @ 2005-04-12 14:22:35)Może to co b...   13.04.2005, 07:51:56
- - bigZbig   @bregovic: Chetnie bym wyprobowal twoj maly plugin...   13.04.2005, 08:07:57
- - NuLL   @ebe - w czymś takim trzeba napisać jakiś procesor...   13.04.2005, 10:51:21
- - bela_666   Cytat(bregovic @ 2005-04-13 07:51:56)Cytat(Nu...   15.04.2005, 14:34:18
- - NuLL   Też bym ogldnął - zastanawiam się czy chodzi o to ...   15.04.2005, 15:15:26
- - Ociu   Tu jest dość ciekawy system templatów, na początek...   15.04.2005, 18:36:39
- - ebe   Ale znaczniki mozna skompilować do php, pozatym ph...   15.04.2005, 18:53:29
- - Wave   emilio, masz rację. Dla niektórych, skrypty w któr...   15.04.2005, 19:23:45
- - Spirit86   ja o tym samym pomyślałem, dlatego postanowiłem st...   15.04.2005, 20:03:02
- - ebe   Cytatzxastanawiam się też nad czymś w rodziaju ...   15.04.2005, 20:27:47
- - Spirit86   @emilio: tak, niby masz rację, co to za różnica? A...   15.04.2005, 20:54:33
- - ebe   Cytatto jest pomysł z PHPBB. Pozatym czasami chces...   15.04.2005, 21:01:19
- - dr_bonzo   Dokladnie, wystarczy w przypadku zalogowania przes...   15.04.2005, 21:12:11
- - Imperior   Widze, że muszę dorzucić swoje kilka groszy... 1....   16.04.2005, 06:51:40
- - Spirit86   @emilio: napiałem, że będzie pojawiał się {title},...   16.04.2005, 09:49:34
- - Djack   Cytat(bigZbig @ 2005-04-13 06:34:42)Smarty ni...   16.04.2005, 18:08:45
- - bigZbig   Smarty sa pewnym kompromisem. Nie sa one moze fakt...   17.04.2005, 12:44:57
- - Djack   Przed momentem znalazlem artykul na temat Szablono...   17.04.2005, 19:19:45
- - bregovic   Smarty ma jeden problem - nażuca użycie swojej log...   18.04.2005, 07:55:44
- - squid   Cytat(NuLL @ 2005-04-12 15:22:35)łe tam - to ...   27.04.2005, 15:49:46
- - bigZbig   Jeżeli używasz adodb to wyniki zapytania zwracane ...   28.04.2005, 08:33:23
- - chmolu   Kolejna wojna o szablony Do autora tematu: nie m...   1.05.2005, 16:56:21
- - Nievinny   @chmolu -> od czego jest Cache? Przypomina mi s...   1.05.2005, 17:26:17
- - bela_666   Cytat(chmolu @ 2005-05-01 17:56:21)Jeszcze na...   1.05.2005, 17:45:51
- - chmolu   @Nievinny - WACT rzeczywiście jest jak dla mnie na...   1.05.2005, 18:17:50
- - ebe   @chmolu: Jak sobie poradzić z pętlami stosując DOM...   1.05.2005, 18:23:04
- - chmolu   WACT jest systemem z prawdziwego zdarzenia i ma wi...   1.05.2005, 18:47:24
- - Ociu   Cytat(chmolu @ 2005-05-01 17:56:21)Problem mo...   1.05.2005, 19:42:24
- - Nievinny   OK, testowałem kod @chmolu i po poprawkach jest ta...   1.05.2005, 19:57:39
- - bela_666   CytatI działa ładnie, ale gdy w zmiennej A, B, C n...   1.05.2005, 20:10:53
- - chmolu   header('Content-Type: text/html;charset=ISO-88...   1.05.2005, 21:22:46
- - Ociu   Nivinny: nie wiem, czy to zależy od wersji php. Mi...   2.05.2005, 07:36:23
- - Slump   @chmolu odp Zyx'a na twoje ( i nie tylko twoj...   2.05.2005, 17:47:29
- - chmolu   Odpowiem Zyxowi tutaj. Cieszę się, że dałeś odzew...   2.05.2005, 19:00:23
- - Slump   Odp zyx'a: Chmolu -> tak, jak pisałem: ins...   2.05.2005, 20:31:43
- - Nievinny   @Bela -> testy na wypadek pomyłek, przecież nik...   2.05.2005, 21:08:32
- - bela_666   CytatNivinny: nie wiem, czy to zależy od wersji ph...   2.05.2005, 22:04:47
- - Ociu   Cytat(bela_666 @ 2005-05-02 23:04:47)W 5.0.3 ...   3.05.2005, 08:07:11
- - Nievinny   Ok, z tego do czego doszedłem w nocy wychodi, że m...   3.05.2005, 08:52:16
- - bela_666   CytatHymm, a moze wprowadzić obowiązek zapisywania...   3.05.2005, 10:43:24
- - Nievinny   Jest, ale częstsze użycie do każdej zmiennej język...   3.05.2005, 10:47:28
- - matid   Ja właśnie pracuję nad własnym systemem szablonów....   4.05.2005, 19:57:13
- - Ociu   Całkiem nie głupie rozwiązanie... Gdzieś widziałem...   4.05.2005, 20:16:04
- - chmolu   Dla treści takie rozwiązanie jest bardzo dobre. Al...   4.05.2005, 20:35:51
- - bregovic   Tja... Dla niektorych bawienie sie formularzami je...   4.05.2005, 20:39:26
- - bela_666   Cytat(bregovic @ 2005-05-04 21:39:26)A co do ...   4.05.2005, 20:59:48
- - bregovic   Cytat(bela_666 @ 2005-05-04 20:59:48)A mógłby...   5.05.2005, 12:30:02
- - Nievinny   Hymm..., tak używanie XSL (szablonów) do tworzenia...   5.05.2005, 17:00:48
- - bela_666   Cytat(bregovic @ 2005-05-05 13:30:02)Więc zas...   5.05.2005, 17:48:04
- - Nievinny   @Bela -> ok, może i dobre rozwiązanie, ale:Cach...   5.05.2005, 17:57:32
- - bela_666   CytatJak rozwiążesz wstawianie wyników pracy php (...   5.05.2005, 18:13:08
- - bigZbig   Panowie! Myslalem, ze chodzi o to aby sobie p...   5.05.2005, 18:56:31
- - Nievinny   CytatWygeneruje XML ? Jaki jest tego sens, to zwię...   5.05.2005, 19:06:39
- - bela_666   Tak na marginesie, a czy nie jest przypadkiem tak,...   5.05.2005, 20:09:56
- - chmolu   CytatTak na marginesie, a czy nie jest przypadkiem...   5.05.2005, 20:23:27
- - matid   Moja opinia na temat pętli: Po co w takim szabloni...   5.05.2005, 20:58:56
- - Nievinny   @Chmolu -> proste szablony są za proste Też uż...   7.05.2005, 14:03:23
- - ebe   CytatCałą listę urzytkowników trzymamy w XML to p...   7.05.2005, 14:11:19
- - chmolu   Cytat(Nievinny @ 2005-05-07 13:03:23)@Chmolu ...   8.05.2005, 08:48:01
- - Nievinny   @chmolu -> jakmentarze jakoś mi nie idą, lepiej...   8.05.2005, 10:15:28
- - chmolu   Mało przekonywujące. Akurat składnia <!--B...   8.05.2005, 11:23:50
- - bigZbig   @chmolu -> ja ci odpowiem dlaczego temlates poc...   9.05.2005, 10:23:24
- - chmolu   @bigZbig: zagnieżdżone pętle da się zaimplementowa...   9.05.2005, 16:50:44
- - Nievinny   OT 1. Każda aplikacja (bardziej złożona od Hello w...   9.05.2005, 16:55:41
- - chmolu   Jedna nawrócona duszyczka   9.05.2005, 18:25:15
- - Ociu   CytatTeraz już jestem pewien, najlepiej używać got...   10.05.2005, 07:10:04
- - bigZbig   @chmolu -> Jestem jak najbardziej za skladnia, ...   10.05.2005, 07:22:56
- - chmolu   Mówiąc o szablonach phpLib/phpBB2 miałem na myśli ...   10.05.2005, 15:25:26
- - Nievinny   @Ociu -> a jednak czytałeś? ;P Nie sądziłem, ż...   10.05.2005, 15:59:22
- - Ociu   od Zyx'a: hmmm... miałbym do dodania co najwyż...   10.05.2005, 20:04:21
- - Seth   Przepraszam, ze sie wtracam ale troche smieszy mni...   10.05.2005, 23:24:29
- - bigZbig   Cytat(chmolu @ 2005-05-10 16:25:26)Jak na raz...   11.05.2005, 08:00:11


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 13.06.2026 - 18:07