Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Smarty]WYwoływanie szablonu w szablonie
Forum PHP.pl > Forum > Gotowe rozwiązania > Systemy szablonów
BugsBunny
Miałem wcześniej w php takie coś, że była sobie strona i np odnośniki index.php?dodaj=2

w php sprawdzałem warunek czy isntanieje dodaj i czy równa się 2 i potem mi się wyświetlał formularz. Czyli tak jakby tylko Dodało do starego kodu HTML ten formularz.

Chciałbym zrobić w Smarty tak

  1. <?php
  2. require_once ('smarty/Smarty.class.php');
  3.  
  4. $smarty = new Smarty;
  5.  $smarty->template_dir = $_home_path."templates/";
  6. $smarty->compile_dir = $_home_path.'templates/templates_c/';
  7. $smarty->config_dir  = $_home_path.'templates/configs/';
  8. $smarty->cache_dir = $_home_path.'templates/cache/'; 
  9. $smarty->display( 'login.tpl' ); 
  10. if($_SESSION['sesja'] == '11') {
  11. header("Location: edit.php");
  12. }
  13.  
  14. //a tutaj dodanie tego formularza
  15.  
  16. if...
  17. ?>


Czyli jak nie będzie sesji to nie wyswietli formularza logowania, a jeśli jest to wyswietli.
login.tpl zawiera cała strone i tam umieściłem zmienną {$LOGUJ} w której chaiąłbym wyswietlic cały formularz, ale nie mogę sie drugi raz odnieśc do tego samego pliku tpl bo mi go powiela.

CUŻ CZYNIĆ questionmark.gif
sf
- zrob osobny calkowice plik na formularz
- zrob osobna formatke na formularz i ja pobierz do zmiennej ( fetch ) i ja potem wstaw w miejsce {$LOGUJ} ( assign )

a jak jestesmy zalogowani i wybierzesz drugi sposob to poprostu $oSmarty->assign('LOGUJ', '');
BugsBunny
A co jeśli miałbym dużo warunków i różne kombinacje wyświetlania. Wtedy by to nei działało. Żeby zastosować ten sposób musiałbym jakoś czyścić ekran bo jeśłi sprawdze warunek który ma dodać forumalrz logowania to powiela mi strone.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.