ďťż
Podstrony
|
telcocafeCześć.Widziałem na jakiejś stronie doskonały sposób na stworzenie Layoutu. Wszystko bazowało na tym że wygląd był wczytywany z pliku np: <html> <head><title>$title</title></head> <body> $jednatresc $drugatresc </body> </html> Cały wic polegał na tym że kod był wczytywany za pomocą jakiejś funkcji, a zmienne w tekście pliku były zamieniane na tekst. Moje pytanie brzmi. Jak to zrobić ? Jak umieszczać w tekście te zmienne ? ( bo ja je tak podałem tylko przykładowo one chyba ineczej wyglądały ) I jak wczytać z pliku te layout ? Pozdrawiam. Poczytaj o smarty. Poczytaj o smarty. Ok, dzięki Mathew ale i tak bym chciał żeby mi ktoś dokładnie na mojego posta odpowiedział. http://www.leon.w-wa...s/templates.php Zmienne zapisuje się tak: {TITLE} {JEDNA_TREŚĆ} {DRUGA_TREŚĆ} http://www.leon.w-wa...s/templates.php Zmienne zapisuje się tak: {TITLE} {JEDNA_TREŚĆ} {DRUGA_TREŚĆ} Dziękuje ci bardzo o to mi chodziło. Nie zamykajcie jeszcze wątku, bo jak czegoś nie będę wiedzial to nie chce zaśmiecać forum nowymi tematami. Edit > Hej mam mały problem nie wiem co ta: return preg_replace('/{([^}]+)}/e', '$this->dane["\\1"]', $this->tmpl); linia oznacza. Po prostu nie rozumiem tego ; ( a zwłaszcza nie rozumiem '/{([^}]+)}/e'. Help ? Użytkownik laughFik edytował ten post 11 sierpień 2006, 19:10 To są wyrażenia regularne http://www.programuj...w/regularne.php Zobacz ten: http://qbsdesign.be/justit.html Prostszy od Smarty ale spełnia swoje zadanie. Cześć. Widziałem na jakiejś stronie doskonały sposób na stworzenie Layoutu. Wszystko bazowało na tym że wygląd był wczytywany z pliku np: <html> <head><title>$title</title></head> <body> $jednatresc $drugatresc </body> </html> Cały wic polegał na tym że kod był wczytywany za pomocą jakiejś funkcji, a zmienne w tekście pliku były zamieniane na tekst. Moje pytanie brzmi. Jak to zrobić ? Jak umieszczać w tekście te zmienne ? ( bo ja je tak podałem tylko przykładowo one chyba ineczej wyglądały ) I jak wczytać z pliku te layout ? Pozdrawiam. Jeśli nie chcesz się bawić gotowymi systemami szablonów możesz to zrobić w prosty sposób: <?php (...) //wartosci poniższym zmiennym nadajesz wedle uznania $title = "tytul strony"; $jednatresc = "..."; $drugatresc = "..."; //po przypisaniu wartości zmiennym wczytujesz plik z szablonem include("szablon.tpl"); ?> Proste i przyjemne :) Dziękuje ci bardzo o to mi chodziło. Nie zamykajcie jeszcze wątku, bo jak czegoś nie będę wiedzial to nie chce zaśmiecać forum nowymi tematami. Edit > Hej mam mały problem nie wiem co ta: return preg_replace('/{([^}]+)}/e', '$this->dane["\\1"]', $this->tmpl); linia oznacza. Po prostu nie rozumiem tego ; ( a zwłaszcza nie rozumiem '/{([^}]+)}/e'. Help ? Ten preg_replace zamienia wszystkie {costam} na wartość $this->dane["costam"]. Jeśli chcesz prosty wstęp do Smarty: Instalacja Smarty Ksiega gości w oparciu o Smarty A jeśli cos własnego chcesz napisać, mniej skomplikowanego to zobacz tu: System szablonów Użytkownik Kodie edytował ten post 14 sierpień 2006, 08:48 Ten preg_replace zamienia wszystkie {costam} na wartość $this->dane["costam"]. Jeśli chcesz prosty wstęp do Smarty: Instalacja Smarty Ksiega gości w oparciu o Smarty A jeśli cos własnego chcesz napisać, mniej skomplikowanego to zobacz tu: System szablonów Wszystko mi się podoba i działa piękinie ;) Ale jak by tu można zrobić aby użytkownik mógł wybrać sobie jakąś skórę z folderu template? Wszystko mi się podoba i działa piękinie ;) Ale jak by tu można zrobić aby użytkownik mógł wybrać sobie jakąś skórę z folderu template? przechowujesz info o skorce w ciastku / sesji i wywolujesz tak if($_SESSION['skorka'] == 1) $skorka = 'czerwona'; else if($_SESSION['skorka'] == 2) $skorka = 'zielona'; else $skorka = 'czarna'; a potem przy wywolaniu klasy $templ = new Template($skorka.'/example.tpl'); [... tu dalszy kod] przechowujesz info o skorce w ciastku / sesji i wywolujesz tak if($_SESSION['skorka'] == 1) $skorka = 'czerwona'; else if($_SESSION['skorka'] == 2) $skorka = 'zielona'; else $skorka = 'czarna'; a potem przy wywolaniu klasy $templ = new Template($skorka.'/example.tpl'); [... tu dalszy kod] Na ciasteczkach się nie znam ;( A jak zrobi tak aby pobierało z templates np. jest sobie ladnaskorka.tpl to by wyświetlało samo ladnaskorka bez *.tpl? A jak zrobi tak aby pobierało z templates np. jest sobie ladnaskorka.tpl to by wyświetlało samo ladnaskorka bez *.tpl? <? function obetnij_nazwe(string $s) { for ($i=count($s)-1; $i>0; $i--) { if ($s[$i]=='.') { $zm = substr($s, 0, $i); break; } } return $zm; } Trudno pomyśleć, prawda? :P Jeśli znasz się na sesjach, stworzenie skórek to... banał... <? function obetnij_nazwe(string $s) { for ($i=count($s)-1; $i>0; $i--) { if ($s[$i]=='.') { $zm = substr($s, 0, $i); break; } } return $zm; } pbnan, po co utrudniać sobie życie? $jakas_nazwa = basename($nazwa_pliku, '.tpl'); B) Ten preg_replace zamienia wszystkie {costam} na wartość $this->dane["costam"]. Jeśli chcesz prosty wstęp do Smarty: Instalacja Smarty Ksiega gości w oparciu o Smarty A jeśli cos własnego chcesz napisać, mniej skomplikowanego to zobacz tu: System szablonów Kodie nie chce być upierdliwy ale czy miałbyś może link do strony która wyjaśnia użycie funkcji preg_replace bo na stronie manuala php nie ma nic co mogło by dotyczyć mojego problemu. Tak samo na na stronie compzone, którą odwiedziałem w poszukiwaniu informacji dotyczących tego jak ona zamienia te dane. Ogólny zarys i funkcjonowanie szablonó smarty jest mi znane. Problem jednak pozostaje z wyrażeniami regularnymi które zmienia preg_replace. Poprostu chciałbym wiedzieć na jakiej zasadzie to działa. Polski manual Smarty: http://rzseattle.piwko.pl Wyrażenia regularne: http://www.gajdaw.pl/php/wyrreg.html oraz http://www.gajdaw.pl/php/wyrreg.html I wszystko jasne ;) |
|||
Sitedesign by AltusUmbrae. |