Inhalt einer Variable im Template anzeigen

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Inferi74
Mitglied
Beiträge: 93
Registriert: 22.02.2007 18:15

Inhalt einer Variable im Template anzeigen

Beitrag von Inferi74 »

Ich habe den Artikel Template-Syntax von phpBB in der Knowledgebase für phpbb 2.0 durchgelesen, aber so recht scheine ich das nicht zu begreifen.

Ich nutze den Mod "phpCA" für Kleinanzeigen. Innerhalb dessen Datei adverts.php zählt das Script die Gesamtanzahl aller Anzeigen und bildet eine Summe in $ads_count .

Diese Zahl möchte ich in der overall_header.tpl noch innerhalb des Links für die Kleinanzeigen darstellen lassen.

Gemäß meines Verständnisses des o.g. Artikels habe ich dann folgende Änderungen durchgeführt:

page_header.php
Vorher

Code: Alles auswählen

$template->assign_vars(array(

//	Added for phpCA

	'L_FORUM' => $lang['Forum'],
	'L_CLASSIFIED_ADS' => $lang['classified_ads'],
	'L_SEARCH_ADS' => $lang['search_ads'],
	'L_MY_ADS' => $lang['my_ads'],
	'U_CLASSIFIED_ADS' => append_sid('adverts.'.$phpEx),
	'U_SEARCH_ADS' => append_sid('ads_search.'.$phpEx),
	'U_MY_ADS' => append_sid('ads_search.'.$phpEx.'?search_name='.$userdata['username']),
Nachher

Code: Alles auswählen

$template->assign_vars(array(

//	Added for phpCA

	'L_FORUM' => $lang['Forum'],
	'L_CLASSIFIED_ADS' => $lang['classified_ads'],
	'L_SEARCH_ADS' => $lang['search_ads'],
	'L_MY_ADS' => $lang['my_ads'],

        'ALLADS' => $ads_count,

	'U_CLASSIFIED_ADS' => append_sid('adverts.'.$phpEx),
	'U_SEARCH_ADS' => append_sid('ads_search.'.$phpEx),
	'U_MY_ADS' => append_sid('ads_search.'.$phpEx.'?search_name='.$userdata['username']),
Und dann im Template

overall_header.tpl
Vorher

Code: Alles auswählen

<a href="{U_CLASSIFIED_ADS}">{L_CLASSIFIED_ADS}</a>
Nachher

Code: Alles auswählen

<a href="{U_CLASSIFIED_ADS}">{ALLADS} {L_CLASSIFIED_ADS}</a>
Aber, wie gesagt, es erscheint nichts (bzw. nur der MouseOver-Effekt "Unterstreichung" verlängert sich um ein "_", was wohl am Leerzeichen zwischen den beiden Variablen liegt) und ich vermute, dass ich da einem gewaltigen Verständnisproblem unterliege.

Daher wäre ich für eure Hilfe dankbar.
Benutzeravatar
ScriptingBase
Mitglied
Beiträge: 161
Registriert: 03.03.2007 09:20
Wohnort: Heidelberg
Kontaktdaten:

Beitrag von ScriptingBase »

Wird der Code des phpCA und somit die Variable $ads_count auch schon in der page_header.php eingebunden? Wenn nicht, dann möchtest du auf eine Variable zugreifen, die erst später erstellt wird und deshalb wird nichts angezeigt ;)
Inferi74
Mitglied
Beiträge: 93
Registriert: 22.02.2007 18:15

Beitrag von Inferi74 »

Aha! An sowas hab ich natürlich nicht gedacht.
In der page_header.php werden von diesem Mod nur die oben beschriebenen Zeilen eingefügt. Sonst wird an dieser Datei keine Änderung durchgeführt.

Das heißt also ich muss den zählenden Teil innerhalb der adverts.php in die page_header.php übernehmen.


Nachträglicher Edit:
Danke für den Hinweis, das hat zum Erfolg geführt.

Eine Numrows-Abfrage (auf die entsprechende Tabelle in der Datenbank) in der page_header.php hat schon gereicht und den Rest konnte man schon so lassen.
Antworten

Zurück zu „Coding & Technik“