Tak , w ten sposob dziala.
Cytat(DeyV @ 2004-11-06 11:43:20)
<?php
//plik php
$Smarty = new Smarty();
$Obiekt = new KlasaTestowa();
$Obiekt->setCos( 'cos' );
$Smarty->assign( 'Obiekt', $Obiekt );
?>
//tpl
{$Obiekt->getCos()}
{$Obiekt->sJakiasZmienna}
Tylko mi chodzi raczej o cos takiego
//tpl
{$Obiekt = new KlasaTestowa()}
{$obiekt->dodaj('cos')}
{$obiekt->dodaj('cos innego')}
<td>{$obiekt->pokaz('cos')}
</td> <td>{$obiekt->pokaz('cos innego')}
</td
Dokladnie pytanie brzmi :
Czy mozna deklarowac zmienne obiektowe w szablonie Smarty , tak jak powyzej ?
Czy moze trzeba w szablonie otworzyc sekcje kodu php zadeklarowac sobie zmienna obiektowa , przypisac co trzeba , zamknac sekcje php ?
--------------------------------------------------------------------------------------------
Poki co , to zrobilem to tak
<?php
//index.php
$obiekt = new KlasaTestowa()
$smarty -> assign('obiekt',$obiekt);
$smarty -> display('index.tpl');
?>
szablon
//index.tpl
{$obiekt -> dodaj('cos')}
<td> {$obiekt -> pokaz('cos')}
</td>
I dziala .
Jednak gdy przed wywolaniem metody dodaj('cos') , chce ustawic jakies pola obiektu $obiekt.
//index.tpl
{$obiekt -> KolorTla = "#ffaabb"}
Pojawia sie problem.
Wyskakuje blad skladni "invalid atribute name '=' "
Dlaczego nie moge uzywac '=' ?