Howto: Einfügen von PHP-Dateien in phpMyFAQ

In this board you can talk about general questions about phpMyFAQ

Moderator: Thorsten

Post Reply
Thorsten
Posts: 15724
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Howto: Einfügen von PHP-Dateien in phpMyFAQ

Post by Thorsten »

Hallo,

hier ein kleines Howto für diejenigen, die PHP-Dateien in die phpMyFAQ einbauen wollen. Dies ist nicht so trivial, denn ein einfaches include() funktioniert nur soweit, dass die Datei ganz am Anfang ausgegeben wird. Der Grund hierfür ist unsere Template Engine.

Als erstes erstellen wir eine PHP-Datei, die wir einfügen wollen:

Code: Select all

<?php print "Das Datum: ".date("d.m.Y"); ?>
Diese Datei speichern wir nun, zB als test.php.

Als nächstes fügen wir im Template index.html einen Platzhalter ein, ein {TEST} an die Stelle, wo unsere PHP-Datei eingefügt werden soll.

Um der phpMyFAQ mitzuteilen, dass die Template-Engine auch die neue Variable parsen soll, muss ein wenig mehr geändert werden.

Man fügt zunächst folgenden Code vor den Bereich mit "/* Einzel-Templates der Unterseiten bestimmen */" in die index.php ein:

Code: Select all

$string = join ("", @file("test.php"));
ob_start();
eval(" ?>".$string."<?php ");
$value = ob_get_contents();
ob_end_clean();
In den Bereich der Variablenzuweisung des Templates muss noch die Variable eingetragen werden:

Code: Select all

				"userOnline" => userOnline(),
				"TEST" => $value,
				"copyright" => 'powered by <a href="http://www.phpmyfaq.de" target="_blank">phpMyFAQ</a> '.$version.'' ));
Die Zeile "TEST" => $value, wurde hinzugefügt.

Nun wird die Datei test.php in die FAQ eingefügt und der PHP-Code ausgeführt.

bye
Thorsten
Last edited by Thorsten on Wed Mar 09, 2005 8:11 am, edited 1 time in total.
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
paedu
Posts: 6
Joined: Thu May 22, 2003 1:05 pm

Achtung bei mehreren includes!

Post by paedu »

Vielleicht muss noch ergänzt werden, dass mehrere $value (z.B. $value1, $value2) verwendet werden müssen, falls mehrere includes vorgenommen werden sollen!
rOK!
Posts: 2
Joined: Wed Aug 06, 2003 10:59 pm
Location: Stuttgart
Contact:

Re: Howto: Einfügen von PHP-Dateien in phpMyFAQ

Post by rOK! »

Thorsten wrote:

Code: Select all

$string = join ("", @file("test.php"));
ob_start();
eval(" ?>".$string."<?php ");
$value = ob_get_contents();
ob_end_clean();
paedu wrote:Vielleicht muss noch ergänzt werden, dass mehrere $value (z.B. $value1, $value2) verwendet werden müssen, falls mehrere includes vorgenommen werden sollen!
Thorsten: Hat die @file Methode Vorteile gegenüber dem ?

Code: Select all

//! executes/reads in a file as php and returns parsed content
function execFile( $file ) {
	ob_start();
	@include( $file );
	$code = ob_get_contents();
	ob_end_clean();
	return $code;
} 
paedu: Reultierend auf das obere:

Code: Select all

     :
   "TEST" => execFile( "test.php" ),
   "TEST2" => execFile( "test2.php" ),
     : 
cheers.oliver
Thorsten
Posts: 15724
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi Oliver,

nein, deine Methode sollte genauso funktionieren.

bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
Berlingo
Posts: 19
Joined: Sat Oct 11, 2003 5:10 pm
Location: Berlin
Contact:

phpMyFAQ

Post by Berlingo »

Diese Lösung sieht tatsächlich etwas umständlich aus.

Wie sieht es denn umgekehrt aus - die Möglichkeit, die phpMyFAQ-Scripte in bestehende php-Scripte zu includen???

Hab gerade erst die Installation gemacht, daher bin ich noch nicht so eingearbeitet in das Tool.

Danke + Gruß aus Berlin,

Ralph
Thorsten
Posts: 15724
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi Ralph,

das ist möglich, das habe ich schon bei einigen FAQs gesehen...

bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
Andy-Corrado
Posts: 57
Joined: Sat Jul 19, 2003 3:21 pm
Location: Wiesbaden-Delkenheim
Contact:

Post by Andy-Corrado »

Kann man nicht einfach ein I-Frame als Beitrag erstellen, in dem dann die PHP-Datei angezeigt wird?
Seit ich Frauen kenne, liebe ich meine PC´s Image Image
Thorsten
Posts: 15724
Joined: Tue Sep 25, 2001 11:14 am
Location: #phpmyfaq
Contact:

Post by Thorsten »

Hi,

das geht auch.

bye
Thorsten
phpMyFAQ Maintainer and Lead Developer
amazon.de Wishlist
Andy-Corrado
Posts: 57
Joined: Sat Jul 19, 2003 3:21 pm
Location: Wiesbaden-Delkenheim
Contact:

Post by Andy-Corrado »

Funktioniert wunderbar. ;)
Einzigster Nachteil daran ist, das man die Höhe von dem Frame immer angeben und anpassen muß.
Seit ich Frauen kenne, liebe ich meine PC´s Image Image
Post Reply