Seite 1 von 1

$template->assign_vars();

Verfasst: 07.11.2004 13:57
von misterx10
kann man das immer benutzen?? oder nur, wenn eine bestimmte funktion definiert ist?? bei mir kommt nämlich:
Parse error: parse error, unexpected ';' in /*****/includes/logbar.php on line 10

Code: Alles auswählen

$template->assign_vars(array(
	'GAME_TITLE' => $config['sitename'],
	'PAGE_TITLE' => $title,
);
zeile 10 ist ");"

Verfasst: 07.11.2004 14:07
von Leuchte
Statt

Code: Alles auswählen

   'PAGE_TITLE' => $title, 
);
So

Code: Alles auswählen

   'PAGE_TITLE' => $title) 
);
kann man das immer benutzen??
Wenn du die includes/functions.php und includes/template.php inkludierst, ja

Verfasst: 07.11.2004 14:16
von MrMind
was hat denn die functions.php damit zu tun???

Wenn man eine eigene Instanz der Template-Klasse definiert, braucht man auch net die functions.php zu includen.

Und auf allen phpBB Seiten wird durch die globalen Dateien diese sowieso includiert ;)

Mfg
MrMind

Verfasst: 07.11.2004 14:18
von misterx10
ja, aber ich brauch das ja nicht für mein forum ;)

jetzt hab ich aber noch ein problem:

jetzt kommt:
Fatal error: Call to a member function on a non-object in /*****/includes/logbar.php on line 4
der Code ist der selbe wie oben, nur dass oben die erste zeile jetzt 4 ist...

Verfasst: 07.11.2004 14:28
von MrMind
wird bei dir in deinem Script irgendwo

Code: Alles auswählen

$template = new template('PFAD/ZUM/TEMPLATEVERZEICHNIS');
definiert???

Wenn nein, ist dies dringends zu empfehlen ;)

Mfg
MrMind

Verfasst: 07.11.2004 15:38
von misterx10
was heißt das ???
Template->loadfile(): No file specified for handle login_body

Verfasst: 07.11.2004 15:51
von Blutgerinsel
misterx10 hat geschrieben:was heißt das ???
Template->loadfile(): No file specified for handle login_body
Na was könnte das wohl bedeuten?
Wenn diese Frage ernstgemeint ist, ist es wohl mehr als erbärmlich.......

Wenn man schon eine Template File einzuladen versucht, dann sollte man vielleicht auch auf die Idee kommen eine anzugeben oder?

Fragen gibts die gibts gar nicht

Verfasst: 07.11.2004 15:59
von misterx10
dann ist es halt erbärmlich :cry: ich weiß aber nicht was das bedeutet... :(
oder ist daran was falsch??

Code: Alles auswählen

$template = new template($grp.'templates/standart');

Verfasst: 07.11.2004 18:10
von Blutgerinsel
misterx10 hat geschrieben:dann ist es halt erbärmlich :cry: ich weiß aber nicht was das bedeutet... :(
oder ist daran was falsch??

Code: Alles auswählen

$template = new template($grp.'templates/standart');
Entweder hast du eine Fehlermeldung oder du hast keine...Und ob die Template Klasse sofort auf einen derartigen Aufruf reagiert kann ich nicht sagen da ich die Template Klasse noch nicht wirklich angeschaut habe....

Jedenfalls muss die Klasse mit new initialisiert werden und wird über $template->loadfile('template/blubb.tpl');

ob es diese Methode gibt kann ich nicht sagen siehe vorherige Aussage.....

P.S.: standart komm nicht von einer Standarte sondern von Standard

Verfasst: 07.11.2004 19:33
von MrMind
Also um mit der Templates Klasse einwandfrei zu arbeiten solltest du folgendes machen:

Laden der Klasse:

Code: Alles auswählen

include('./includes/template.php');
Instanz erzeugen:

Code: Alles auswählen

$template = new Template('./templates/subSilver');
Nun musst du jeder Seite die du Ausgeben willst (Parsen willst) wie folgt erstmal zuweisen:

Code: Alles auswählen

$template->set_filenames(array('body'=>'body.tpl')),
Danach kannste mit assign_vars() oder assign_block_vars() die Variablen zuordnen

Code: Alles auswählen

$template->assign_vars(array('HELLO' =>$hello));
oder

Code: Alles auswählen

$template->assign_block_vars('block',array('HELLO' =>$hello));
bei letzteres muss der Block in der HTML-Datei so ähnlich aussehen:

Code: Alles auswählen

<!-- BEGIN block -->
{block.HELLO}
<!-- END block -->
und zum Schluss noch die Seite parsen:

Code: Alles auswählen

$template->pparse('body');
Mfg
MrMind