Seite 2 von 2
Verfasst: 01.08.2005 13:52
von Fabse
Schumi hat geschrieben:Richtig ist:
Nö das stimmt nicht

Richtig ist:
Code: Alles auswählen
$template->assign_vars(array('NUM' => ' <b>' . $i . '</b> '));
Aber ich hab das Problem jetzt gefunden.
Irgendwas dürfte in der .tpl Datei nicht stimmen.
Und zwar hier:
Code: Alles auswählen
!-- BEGIN switch_num -->
{NUM}
<!-- END switch_num -->
<!-- BEGIN switch_not_num -->
hw {NUMS}
<!-- END switch_not_num -->
Aba ich weiß nicht was da falsch ist. Kann mir jmd helfen?
Gruß, Fabse
Verfasst: 01.08.2005 14:02
von Schumi
Die Variablennamen setzen sich zusammen aus Blocknamen und Variablenname, d.h. wenn du in dem Block <!-- BEGIN switch_not_num --> die Variable NUMS hast, musst du diese über {switch_not_num.NUMS} ansprechen.
Verfasst: 01.08.2005 14:19
von Fabse
Wir trotzdem noch nichts ausgegeben

Verfasst: 01.08.2005 19:30
von Pyramide
Schumi hat geschrieben:Zumindest die Variablenzuordnung ist fehlerhaft.
Richtig ist:
Warum hält sich dieses Gerücht eigentlich so hartnäckig? Wenn man mal in den
Code mal angucken würde, würde man folgendes finden:
Code: Alles auswählen
196 /**
197 * Root-level variable assignment. Adds to current assignments, overriding
198 * any existing variable assignment with the same name.
199 */
200 function assign_vars($vararray)
201 {
202 reset ($vararray);
203 while (list($key, $val) = each($vararray))
204 {
205 $this->_tpldata['.'][0][$key] = $val;
206 }
207
208 return true;
209 }
210
211 /**
212 * Root-level variable assignment. Adds to current assignments, overriding
213 * any existing variable assignment with the same name.
214 */
215 function assign_var($varname, $varval)
216 {
217 $this->_tpldata['.'][0][$varname] = $varval;
218
219 return true;
220 }
Also: eine einzelne Variable kann man per
assign_var('NAME', 'Wert') zuweisen, beliebig viele per
assign_vars(array('NAME1' => 'Wert1', 'NAME2' => 'Wert2')).
@Fabse: Da du die Template-Blöcke verschachtelst, musst du dies auch in der PHP Datei angeben. Also z.B.
$template->assign_block_vars('switch_pages.pages.switch_num', array()).
Guck dir am besten mal das
herunterladbare Beispiel aus dem
KB-Artikel über die Template-Syntax an.
Verfasst: 02.08.2005 01:03
von Fabse
Yeah.. es funktioniert!
Vielen Vielen Dank!
Gruß, Fabse