$title vom content in den <head>$title</head>

Vaio82

Erfahrenes Mitglied
Hallo zusammen :)

Mal wieder ein Problem *gg* Da es eher ein logisches Problem ist, weiß ich nicht, ob es in dieses Forum passt...

Also ich habe ein Template, indem das Design, die Navigation und der Content zusammengefügt werden. Im Template steht somit ein komplettes Gerüst der Seite. In der Content Tabelle steht z.B.:

PHP:
<table align="center" width="92%" border="0">
<tr>
<td><?php include $content ?></td>
</tr>
</table>

Dann habe ich z.B.: eine Datei, die beim Aufruf:

PHP:
include setup.... [darin ist z.B.: $title = "Blub";]
$content = ....
$navigation = ....
include ... template ... etc.

eine neue Seite generiert. alles schön und gut.

nun nehmen wir mal an, dass $content ein weiteres Template zugewiesen wird, indem der Inhalt (parameterspezifisch per Link) aus einer Datanbank generiert wird....

Wenn man sich nun die Seite im Browser ansieht wird man überall als Titel: "Blub" haben... Genau das ist mein Problem ;)

Ich möchte irgendwie die Variabel $title über den Content (der Inhalt von $title müsste dann ebenfalls in der DB vorhanden sein) an das main Template übergeben, um den aktuellen Titel angezeigt zu bekommen. Jedoch ist der Parser ja schon im Content und hat den oberen Teil der Seite ja schon an den Browser übergeben.

Wie kann man das nun lösen? Evtl. eine DB abfrage im Main Template einbauen, die anhand der Parameterübergabe in der Datenbank den passenden $titel raussucht und ausgibt?

Ich würde mich über Antworten sehr freuen :)

Schönen Gruß
Claus
 
Zuletzt bearbeitet:
*nixversteh* habs mir jetzt 3x durchgelesen, blick aber irgendwie net durch.

diese vielen pünktchen verwirren mich auch irgendwie, ich kann nicht erkennen ob du nun nen skript includieren willst oder sonst irgendwas. schreib nochmal den teil ohne pünktchen hin oder jedenfalls das für was die pünktchen stehen. den text darunter kann ich nämlich bisher nicht nachvollziehen.
 
Das mit den Punkten ist doch völlig nebensächlich. Eigentlich wird mit dem Code nur gezeigt, wie sich meine Seite aus einzelnen Teilen zusammensetzt.

Weil du es bist :) Hier ist ein detailliertes Beispiel von einer "blub.php":

PHP:
<?php
include $DOCUMENT_ROOT.'_blub/_blub/_assist/_main.setup';
$header = $DOCUMENT_ROOT.'_blub/_blub/_header/_header.php';
$vbar = $DOCUMENT_ROOT.'__blub/_blub/_nav/_vbar_left.php';
$vbar_u = $DOCUMENT_ROOT.'_blub/_blub/_nav/_vbar_u.php';
$content = $DOCUMENT_ROOT.'_blub/_blub/_con/_con.php';
$vbar_r = $DOCUMENT_ROOT.'_blub/_blub/_nav/_vbar_right.php';
$footer = $DOCUMENT_ROOT.'_blub/_blub/_footer/_footer.php';
include $DOCUMENT_ROOT.'_blub/_blub/_assist/_main.template';
?>

So läuft das prinzipiell ab. Wenn du nun auf die Seite:

http://blub.blub.de/blub/blub.php klickst, wird der Inhalt includiert und du bekommst die Seite angezeigt.
 
Zuletzt bearbeitet:
Hm, warum lässt du nicht bevor du die Seite zusammenbasteln lässt erst den drei Variablen Content, Titel und Navigation ihre Inhalte zuweisen. So kannst du vor dem Beginn der Seite $titel einen Wert auf Grund von Content zuweisen!
 
vielleicht weil es im Template unsauber aussieht :) Das ist wirklich eine Idee :) Danke, ich werds heute Abend mal testen.
 
seite wird nicht angezeigt :p

nein scherz *gg*

ich glaube ich weiß jetzt wie du das meinst, im grunde müsstest du doch nur einfach die ausgabe erst dann vornehmen, wenn du alle variablen geladen hast bzw. du lässt den parser erst dann dein template parsen sobald er die variablen geholt hat.

im grunde müsstest du deine reihenfolge ändern und quasi erst die template laden, dann die variablen und dann parsen, dann haben sich alle variablen so überschrieben, dass am ende, dass geparst wird, was an oberster stelle liegt.
 
Diese "Art" ist auch etwas schwer zu erklären :) Vielleicht habe ich mich auch etwas "schwammig" ausgedrückt :)

Ich werde einfach die $... vor dem <head>... (des Main Templates) unterbringen und zuweisen. Sebastianus hatte da schon die Idee :) Ich bin mal gesapannt und werde wohl doch früher Feierabend machen *grinst*
 
Zurück