phpBB2.de Foren-Übersicht  
[netclusive - internet broadcasting]
 FAQ  •  Suchen  •  Download  •  Lesezeichen  •  Mitgliederliste  •  Benutzergruppen   •  Registrieren  •  Profil  •  Einloggen, um private Nachrichten zu lesen  •  Login
 
        
 
        
 

LinkLift

Nächstes Thema anzeigen
Vorheriges Thema anzeigen

Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.
Autor Nachricht
coolsoft
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 09.11.2005
Beiträge: 5498
Wohnort: deep in the south (G)

BeitragVerfasst am: Sa 18 Feb, 2006 23:07 Antworten mit ZitatNach oben 

Hallo an die Coder -
bin ja nicht so ganz ungeschickt - bislang gewesen Sad

PHP Scripting so mit den ganzen (einfachen) Konstrukten ist mir nicht ganz so fremd.

ABER:

ich finde gerade im Code von phpBB2 immer wieder zwei Code Zeilen, die ich nicht drauf hab:

1)

z.B.:
Code:
{SITENAME}

oder
Code:
{SITENAME}<a href="{U_USER_MAP}">{L_USER_MAP}</a>


soweit ich vermute ein Tag - aber wie stelle ich die Inhalte für den Tag her?? Soll heissen: worauf wird hier referenziert??

2)

z.B.:
Code:
<!-- BEGIN switch_user_logged_in -->


der Anfang deutet ja zunächst auf einen HTML - Kommentar hin, wie(so)
findet dann aber offensichtlich der Aufruf von WAS (Objekt, Function...) statt?
BEGIN wird wohl ein Schlüsselwort sein, aber für welches Konstrukt?

Selfphp hat bis zu diesem Punkt häufig geholfen - zu den einfachen Dingen des Scriptings -
aber nu Question Question

Könnte mir vorstellen, daß ein, zwei Sätze schon helfen können.
Lese mir das gerne auch an - hat einer nen Link??

danke schon mal -

OT:
(könnte mal einer meinen Link einer Copyright unterziehen oder diesen einer Überprüfung vorschlagen?? - ich find grün so schön Very Happy Exclamation )

_________________
°
*** upgrade zu phpbb3 / Migration - bei Interesse bitte PN ***
*** phpBB3 plus slimline (free) ***
*** phpBB3 plus light mit Portal, Download, Gallery codebase 3.0.6 (25 EUR) ***
== Support für Fortgeschrittene / experienced users support
kein Support via PN
HiddenBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
Google







Verfasst am: Nach oben

Titus
Administrator
Administrator



Anmeldungsdatum: 24.03.2004
Beiträge: 4255

BeitragVerfasst am: Sa 18 Feb, 2006 23:48 Antworten mit ZitatNach oben 

1. in den zur tpl gehörenden php dateien oder auch der page_header / _tail.php findest du
$template->assign_vars(array( )); damit werden diese Varianlen weitergegeben

2. ist ein switch der sich hier z.B. in der page_header.php befindet

diese werden eben von der templateengine des phpBB interpretiert und umgesetzt

_________________
"geht nicht" ist keine Fehlerbeschreibung mit der man was anfangen kann
bei Fragen erst suchen
Downloads gibts hier und da
HiddenBenutzer-Profile anzeigenPrivate Nachricht senden
coolsoft
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 09.11.2005
Beiträge: 5498
Wohnort: deep in the south (G)

BeitragVerfasst am: So 19 Feb, 2006 00:09 Antworten mit ZitatNach oben 

Hallo Titus,
vielen Dank für die ultraschnalle Antwort.
(*grünhüpf* Very Happy )
darf ich trotzdem nochmal blöd nachfragen?

was machen die brackets resp. das html-comment symbol an der Stelle?
ist das "indidual-phpbb2 -interpreter"??

Oder kenn ich ich einfach wesentliche Teile der php-Syntax nicht?

Ist die TPL Engine - eine eigenständige Engine, die diese Syntax möglich macht?

*ratlos* - obwohl ichs bisher immer anders geschafft hab?

Ich kuck mir mal prophylaktisch die von Dir genannten Dateien an.

Danke
Gerhard

_________________
°
*** upgrade zu phpbb3 / Migration - bei Interesse bitte PN ***
*** phpBB3 plus slimline (free) ***
*** phpBB3 plus light mit Portal, Download, Gallery codebase 3.0.6 (25 EUR) ***
== Support für Fortgeschrittene / experienced users support
kein Support via PN
HiddenBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
lenny5000
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 23.01.2004
Beiträge: 179

BeitragVerfasst am: So 12 März, 2006 19:21 Antworten mit ZitatNach oben 

Richtig, diese Sachen funktionieren nur im phpBB, oder in einer anderen Seite, die das Templatesystem vom phpBB benutzt.

Dein
Code:
{SITENAME}

wird beispielsweise durch
PHP:
<?php $template->assign_vars(array(
    
'SITENAME' => $board_config['sitename'],
...
); 

in der includes/page_header.php mit der Variable $board_config['sitename'] ersetzt, die vorher aus der Datenbank ausgelesen wurde.

Wenn man jetzt Dateien wie die viewtopic_body.tpl anschaut, die ja für das Angucken eines Topics verwendet wird, findet man da "Blöcke", die zum Beispiel mit
Code:
<!-- BEGIN postrow -->

anfangen und mit
Code:
<!-- END postrow -->

In dem Beispiel wird dieses Template in der viewtopic.php so angepasst, dass zwischen den beiden Codeteilen ein Beitrag steht. Da aber auch mal mehr als ein Beitrag in einem Topic drin sein kann :), muss das ganze in einen Block rein, der dann so oft wie er benötigt wird hintereinander gepackt werden kann, wobei immer wieder andere Beiträge (und was noch so dabeisteht, Username, Avatar, Signatur, ...) eingefügt werden. Die Platzhalter innerhalb dieses Blockes sehen dann zum Beispiel so aus:
Code:
{postrow.POSTER_NAME}

In der viewtopic.php werden dann so viele Blöcke wie benötigt definiert, die die Templatengine dann aneinanderhängt:
PHP:
<?php //
// Okay, let's do the loop, yeah come on baby let's do the loop
// and it goes like this ...
//
for($i 0$i $total_posts$i++)
{
...
        
$poster $postrow[$i]['post_username'];
...
    
$template->assign_block_vars('postrow', array(
...
        
'POSTER_NAME' => $poster,
...
                                                        )
    );

In einer Schleife wird ein Block nach dem anderen abgefertigt, wobei $poster jedes Mal einen neuen Wert aus $postrow zugewiesen kriegt.

Diese Blöcke können nun auch wie bei deinem Beispiel verwendet werden, um einen Teil des Codes entweder anzuzeigen oder nicht anzuzeigen, indem die assign_block_vars-Funktion für diesen Block entweder gar nicht oder nur einmal aufgerufen wird - im Code vom phpBB fangen die Namen dieser Blöcke dann meistens (oder immer?) mit "switch_" an.

So, ich hoffe da ist jetzt kein Fehler drin und es hilft dir weiter. ;)
OfflineBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
coolsoft
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 09.11.2005
Beiträge: 5498
Wohnort: deep in the south (G)

BeitragVerfasst am: So 12 März, 2006 20:40 Antworten mit ZitatNach oben 

Hallo Lenny,
5000 - fachen Dank für die ausführlichen Erläuterung.
Hatte meine Frage eigentlich schon in den Katakomben des Forums hier vergraben gesehen. Very Happy

Darf ich trotzdem nochmal nachfragen:

der Ablauf / Sinn / Inhalt des ganzen ist mir aus der Praxis schon geläufig,
nur :
wo - verfluchtjuche - werden die "{....}" und "<!-- -->" interpretiert.
Da ja eigentlich alles im Script-Text vorliegt und nicht mir Kompilaten gearbeitet wird, sollte es eigentlich eine (?) Stelle geben an der der Inhalt der Variablen (Objekten.. wie oben so schön beschrieben..) interpretiert und "eingeschleift" wird?
Danke Gerhard

_________________
°
*** upgrade zu phpbb3 / Migration - bei Interesse bitte PN ***
*** phpBB3 plus slimline (free) ***
*** phpBB3 plus light mit Portal, Download, Gallery codebase 3.0.6 (25 EUR) ***
== Support für Fortgeschrittene / experienced users support
kein Support via PN
HiddenBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
lenny5000
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 23.01.2004
Beiträge: 179

BeitragVerfasst am: So 12 März, 2006 21:02 Antworten mit ZitatNach oben 

Hmm... Also interpretiert und zusammengesetzt wird das ganze in dem Templateobjekt, das in der includes/template.php definiert ist, hauptsächlich in der compile()-Funktion, wenn ich das halbwegs richtig verstehe.
OfflineBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
coolsoft
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 09.11.2005
Beiträge: 5498
Wohnort: deep in the south (G)

BeitragVerfasst am: So 12 März, 2006 21:11 Antworten mit ZitatNach oben 

Danke, ab da kann ich weiter-'lesen'

hätt ich auch selber finden können Sad
- wenn ich schon immer die anderen anmeckere - aber sind ja auch ein paar Files Thanks

_________________
°
*** upgrade zu phpbb3 / Migration - bei Interesse bitte PN ***
*** phpBB3 plus slimline (free) ***
*** phpBB3 plus light mit Portal, Download, Gallery codebase 3.0.6 (25 EUR) ***
== Support für Fortgeschrittene / experienced users support
kein Support via PN
HiddenBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:      
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.

Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen

Ähnliche Beiträge
Thema Autor Forum Antworten Verfasst am
User/Beiträge aus zwei Foren integrie... Nagllois Support allgemein 2 Do 14 Feb, 2008 14:21 Letzten Beitrag anzeigen
2. fragen ichmagspeck Mods & Co. 3 Fr 08 Feb, 2008 21:02 Letzten Beitrag anzeigen
Verschiedene Fragen Einstein83 phpBB2.x - Support 1 So 11 Nov, 2007 22:20 Letzten Beitrag anzeigen
Paar kleine Fragen zur Startseite,CHM... Kamikaze84 phpBB2.x - Installation 5 Fr 19 Okt, 2007 13:25 Letzten Beitrag anzeigen
Verschiedene Fragen The-ill-O Support allgemein 5 Mi 17 Okt, 2007 18:55 Letzten Beitrag anzeigen