Witam, mam pytanie dotyczące szablonów. Mam z nimi styczność bardzo krótko, bo ogarniam je 1 dzień. Stworzyłem formularz w którym wpisuje jakieś dane i chciałbym osiągnąć taki efekt aby po kliknięciu wyświetliła się tylko zawartość szablon1.tpl gdy dane się zgadzają, a gdy się nie uda to szablon2.tpl. Obecnie jest tak, że wyświetla się zawartość formularz.tpl i pod spodem szablon1.tpl lub szablon2.tpl.
index.php
<?php
require_once('./smarty/Smarty.class.php');
$login = $_POST['imie'];
$smarty = new Smarty;
$smarty -> template_dir = './smarty/templates/';
$smarty -> compile_dir = './smarty/templates_c/';
$smarty -> assign('data', date('d.m.Y'));
$smarty -> display('formularz.tpl');
//Chodzi mi o cos takiego by wlasnie zaleznie od wyniku, wyswietlic odpowiednia templatke
if($login == 'ab'){
$smarty -> display('szablon1.tpl');
}else{
$smarty -> display('szablon2.tpl');
}
?>
formularz.tpl
<html>
<head>
<title>Strona</title>
</head>
<body>
<form action="index.php" method="post">
<p>Imie: <input type="text" name="imie" value="" size="30" maxlenght="40"
style="position: absolute; left: 160px"></p>
<p><input type="submit" value="Zaloguj"></p>
</form>
</body>
</html>
szablon1.tpl
<html>
<head>
<title>Strona</title>
</head>
<body>
<p>Witamy, jestes zalogowany. {$data}!</p>
</body>
</html>
formularz.tpl
<html>
<head>
<title>Strona</title>
</head>
<body>
<p>Witamy, nie jestes zalogowany. {$data}!</p>
</body>
</html>
Obecnie wyświetla się zawartość formularz.tpl i zależnie od wyniku poniżej szablon1.tpl lub szablon2.tpl.