Seite 1 von 2

php-file einbinden - wie?

Verfasst: 29.05.2008 16:14
von theMomo
Ich möchte eine php-Datein ins Template einbinden. Ich habe z.B. eine test.php, die ich unter der Anzeige der besucher anzeigen lassen möchte. In phpbb2 habe ich das mit einem entsprechenden Befehl in der index.php gelöst, also

'TEST_PHP' => file_get_contents('http://www..../test.php'),

In der index_body.tpl habe ich das entsprechend eingebunden mit


<span class="gensmall"><b><u>Test: </u></b></br></br>
{TEST_PHP}</br></span>



Das hat prima funktioniert. Wie bekomme ich das in phpbb3 wieder hin? Kann mir da bitte jemand einen Tipp geben?

Danke

Verfasst: 29.05.2008 16:42
von 4seven
Entweder du erlaubst es im ACP global (unsicher), oder ab hier lesen:

http://www.phpbb.de/viewtopic.php?p=995615#995615

Ein anderer Trick ist mir i.A. nicht bekannt.

Verfasst: 29.05.2008 17:40
von theMomo
Danke für den Tipp, ich habe das jetzt mal ausprobiert. Aber: es wird nichts angezeigt. Habe schon alle Chaches geleert, Browser gewechselt usw. Es wird mir auch die html-Seite bei direktem Aufruf nicht angezeigt. Das habe ich auch probiert. Irgendwas mach ich falsch. Aber was? :o

PS: Inzwischen kann ich die html-Datei anzeigen lassen und das klappt. Nur mit dem Einbinden ins Forum funktioniert es immer noch nicht. Keine Anzeige :cry:

Verfasst: 29.05.2008 18:40
von 4seven
Die PHP-Datei muss im Hauptverzeichnis liegen.

Die Templatedatei im Templateverzeichnis mit diesem Inhalt (deinehtmldatei.html)
<html>
<head>
<title>Last Topics</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<script type="text/javascript">
<!--
var iH = "400";
var iB = "600";
document.write('<iframe '
+ 'height="' + iH + '"'
+ 'width="' + iB + '"'
+ 'frameborder=0 '
+ 'src="deinephpdatei.php">'
+ '</iframe>');
//-->
</script>
</body>
</html>
Der Dateiname der PHP-Datei ohne Slash, http oder bla. etc. also > genauso einbinden wie angegeben (namen ändern *logo)


dann in einer beliebigen anderen templatedatei
<!-- INCLUDE deinehtmldatei.html -->

Verfasst: 30.05.2008 12:34
von theMomo
Hab alles probiert, wirklich alles, es funktioniert nicht. Wenn ich die Datei ins Template-Verzeichnis lege gibt es zudem einen Fehler beim direkten Aufruf. Ich habe jetzt sogar die unsichere Variante ausprobiert - funktioniert auch nicht. Es ist mir schleierhaft woran das liegen könnte. Allerdings habe ich den Verdacht, dass das Bord einfach kein Java will. Aber - wo und wie kann ich das ändern?

Verfasst: 30.05.2008 15:16
von Boecki91
War nicht eben noch die Rede von PHP? :o

Verfasst: 31.05.2008 00:30
von 4seven
Dann bleibt noch Plan B, da du die html ja inzwischen aufrufen kannst :wink:
Dann halt das direkt in deine Template-Datei an gewünschte Stelle

Die PHP-Datei muss nachwievor im Hauptverzeichnis liegen.
<script type="text/javascript">
<!--
var iH = "400";
var iB = "600";
document.write('<iframe '
+ 'height="' + iH + '"'
+ 'width="' + iB + '"'
+ 'frameborder=0 '
+ 'src="deinephpdatei.php">'
+ '</iframe>');
//-->
</script>

Verfasst: 31.05.2008 12:17
von webazubi
Weiß nicht ob es mit der Frage zusammenhängt, aber ich glaube ich habe auch mal erfolglos versucht, eine externe PHP-Datei in eine Variable zu packen und die dann im Template auszugeben.
Da half dann nur, die PHP direkt im Template zu includieren

Code: Alles auswählen

<!-- PHP -->
	echo "hello!";
<!-- ENDPHP -->
oder vielleicht auch

Code: Alles auswählen

<!-- INCLUDEPHP somefile.php -->
Was ich ja auch noch suche ist so etwas wie:

Code: Alles auswählen

<!-- INCLUDEPHP {MEINE_FILEVARIABLE} -->
Also in der php-Datei wird ein Dateiname als Variable an das Template übergeben und Template bastelt sich daraus den Dateinamen der zu inkludierenden Datei.

Verfasst: 31.05.2008 12:52
von theMomo
4seven hat geschrieben:Dann bleibt noch Plan B, da du die html ja inzwischen aufrufen kannst :wink:

Zwischendurch ja, inzwischen kann ich auch die nicht mehr aufrufen. Danke für den Tipp, die Variante hatte ich auch schon ausprobiert. So etwas habe ich nich nicht erlebt. Ich zweifle langsam. Ich habe extra mit Opera und Explorer probiert, nach Cache löschen. Es kommt nicht mal eine Fehlermeldung. Jetzt überlege ich ob ich gar den Apachen neu starte um zu sehen, ob dann etwas passiert. Diese Templates rühren und rütteln sich nicht. Steif und fest in der Test-Brandung oder so. :o

@webazubi

Habe ich jetzt auch mal probiert. geht auch nicht. Nicht mal das hello ist irgendwo zu sehen...


@Beocki91

In der Lösung wird das file via Java (Iframe) eingebunden

Verfasst: 31.05.2008 12:57
von Boecki91
Das war doch kein Java, das war JavaScript (Und ja da gibt es Unterschiede :wink: )

Leerst du eigentlich nach jeder Änderung den Cache von phpBB3 und den von deinem Browser?