php-code durch eine templatedatei aus anderer datei auslesen

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
howie1
Mitglied
Beiträge: 3
Registriert: 03.11.2006 22:54

php-code durch eine templatedatei aus anderer datei auslesen

Beitrag von howie1 »

hi,

ich möchte template entwickeln, das sich in abhängigkeit von der gewählten schaltfläche den content aus einer datei holt und ausgibt. nur am rande, ich arbeite hier mit dem get-befehl. das auslesen funktioniert wunderbar. in der externen datei ist jedoch ausser html-code auch php-code. der html-code wird ausgegeben, der php-code nicht.

hat jemand eine idee, wo mien denkfehler ist? ich glaube der text wird direckt vom browser ausgegeben und geht nicht durch den befehlsinterpreter. was kann ich tun?

<?php
// welche schaltfläche wird gedrückt - der inhalt der jeweiligen datei wird ausgegeben

if (isset ($_GET["select"])){
$datei = "./content/".$_GET[select].".txt";
$fp = fopen ("$datei", "r");
$fsize = filesize ($datei);
$content = fread ($fp, $fsize); //htmlspecialchars()
echo $content;
fclose ($fp);
} else{
include ("./content/HOME");
}
?>

danke gruss howie
------------------------------------------------------------------------------
note: php5; 1+1 vserver
Benutzeravatar
killerbees19
Mitglied
Beiträge: 1185
Registriert: 09.05.2006 17:33
Wohnort: Wien (Österreich)
Kontaktdaten:

Beitrag von killerbees19 »

In einer Templatedatei kannst du kein PHP nutzen. Denn die Templatedatei wird von phpBB geladen und ersetzt.

In der Templatedatei kommen solche Dinge vor: z.B. {L_MEMBERLIST}
Wenn du dann in der jewiligen PHP-Datei nachschaust, wirst du sehen, dass es dort definiert ist.

Lesestoff:
Template-System von phpBB
Template-Syntax von phpBB


MfG Christian
» Real programmers don't comment. If it was hard to write, it should be hard to understand!
howie1
Mitglied
Beiträge: 3
Registriert: 03.11.2006 22:54

Beitrag von howie1 »

@killerbees19

danke für deine antwort. hab grad selbst eine lösung gefunden.

die lösung war simpel.
da ich mit fread() die ext. datei ausgelesen habe wurde der klartext im browser wiedergegeben, so wie ich schon dachte. der html-code konnte normal vom browser dargestellt werden, den php-code hat einfach ignoriert, weil er das nicht kann. der hätte erst vom webserver in html-code interpretiert werden müssen.

einfach die fopen()-und dateiauslese-schnodder weglassen, und stattdessen

include ($datei);

verwenden...! dann wirds nochmal durch den webserver verdaut und ordentlich ausgegeben.

danke
gruss howie
Antworten

Zurück zu „phpBB 2.0: Mod Support“