Include richtig anwenden

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
x16
Mitglied
Beiträge: 472
Registriert: 03.11.2005 22:35
Wohnort: Hamburg
Kontaktdaten:

Include richtig anwenden

Beitrag von x16 »

Ich versuche die recent.php in meiner index.html der Hompage zu includen aber das geht nur mit dem absoluten Pfad:

Code: Alles auswählen

<?php include('http://www.test.de/forum/recent.php'); ?>

Bei include soll man aber wie ich gehört habe keine Absoluten Pfade benutzen. Bei mir verdreifacht sich nämlich so die ladezeit der Seite.

Aber wenn ich das so eingebe,:

Code: Alles auswählen

<?php include('forum/recent.php'); ?>
bekomme ich diese fehlermeldung:

Code: Alles auswählen

Warning: main(./extension.inc): failed to open stream: No such file or directory in /www/htdocs/v157017/forum/recent.php on line 13
Benutzeravatar
larsneo
Mitglied
Beiträge: 2622
Registriert: 07.03.2002 15:23
Wohnort: schwäbisch gmünd
Kontaktdaten:

Beitrag von larsneo »

die (nicht zu unterschätzende) dokumentation meint dazu:
Files for including are first looked in include_path relative to the current working directory and then in include_path relative to the directory of current script. E.g. if your include_path is ., current working directory is /www/, you included include/a.php and there is include "b.php" in that file, b.php is first looked in /www/ and then in /www/include/. If filename begins with ./ or ../, it is looked only in include_path relative to the current working directory.
gruesse aus dem wilden sueden
larsneo
..::[krapohl.net]::..
Benutzeravatar
x16
Mitglied
Beiträge: 472
Registriert: 03.11.2005 22:35
Wohnort: Hamburg
Kontaktdaten:

Beitrag von x16 »

Hi,
ich verstehe was das problem ist. Komme aber nicht auf eine Lösung.

Muss ich mal bisschen rumprobieren.
MTV-King
Mitglied
Beiträge: 513
Registriert: 19.10.2006 22:15
Wohnort: Nordenham
Kontaktdaten:

Re: Include richtig anwenden

Beitrag von MTV-King »

x16 hat geschrieben:Ich versuche die recent.php in meiner index.html der Hompage zu includen
seit wann kann man denn in ner html seite ne php datei zu includen?
Mein Projekt: Skiforum
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Re: Include richtig anwenden

Beitrag von fanrpg »

MTV-King hat geschrieben:
x16 hat geschrieben:Ich versuche die recent.php in meiner index.html der Hompage zu includen
seit wann kann man denn in ner html seite ne php datei zu includen?
In dem man die index.html durch den php parser laufen lässt.
Benutzeravatar
Martin Truckenbrodt
Mitglied
Beiträge: 1143
Registriert: 15.08.2003 23:16
Wohnort: Südthüringen
Kontaktdaten:

Beitrag von Martin Truckenbrodt »

Hallo x16,
etwas konkreter als die zwei Vorschreiber: Benenne einfach die Index Datei in index.php um.

Gruß Martin
Advanced Block MOD 1.1.4 ist released! - Verhindere Spam auf Deinem phpBB3 Board mit Stop Forum Spam, BotScout, Akismet, Project Honey Pot und verschiedenen IP-RBL und Domain-RBL DNS Blacklisten! - Meine MODs - phpBB Complete Core
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Beitrag von gn#36 »

Wenn ich das richtig verstanden habe ist das Problem nicht dass sie nicht ausgeführt wird.

So wie ich die Fehlermeldung deuten würde ist das Problem nicht der Include in deiner indexdatei, sondern die Includes die folgen. Diese Beziehen sich auf die Position der ursprünglichen Datei (die Variable $phpBB_root_path wird gesetzt im allgemeinen auf ./ oder etwas ähnliches. Betrachtet man dann das Zitat von larsneo
... If filename begins with ./ or ../, it is looked only in include_path relative to the current working directory.
dann wird klar warum alle folgenden includes in den Forumsdateien fehlschlagen: es wird im falschen (übergeordneten) Ordner gesucht, nicht im Forumsordner. Darufhin schlägt dann natürlich sofort der erste include (extension.inc) fehl. Du benötigst also eine Datei die einen entsprechend angepassten phpbb_root_path hat.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Benutzeravatar
Martin Truckenbrodt
Mitglied
Beiträge: 1143
Registriert: 15.08.2003 23:16
Wohnort: Südthüringen
Kontaktdaten:

Beitrag von Martin Truckenbrodt »

Hallo gn#36,
ungewöhnlich, das *.html geparst wird, aber Du scheinst bei genauerer Betrachtung Recht zu haben.

In der recent.php müßte folgendes drin stehen:

Code: Alles auswählen

$phpbb_root_path = './forum/';
Gruß Martin
Advanced Block MOD 1.1.4 ist released! - Verhindere Spam auf Deinem phpBB3 Board mit Stop Forum Spam, BotScout, Akismet, Project Honey Pot und verschiedenen IP-RBL und Domain-RBL DNS Blacklisten! - Meine MODs - phpBB Complete Core
Benutzeravatar
x16
Mitglied
Beiträge: 472
Registriert: 03.11.2005 22:35
Wohnort: Hamburg
Kontaktdaten:

Beitrag von x16 »

Wenn du willst, dass deine HTML Dateien auch geparst werden, musst du eine .htaccess Datei im Root deiner Homepage mit folgendem Inhalt erstellen:

Code: Alles auswählen

AddType application/x-httpd-php .html
AddHandler php-cgi .php .php4
Die Idee mit

Code: Alles auswählen

$phpbb_root_path = './forum/';
habe ich auch schon gehabt, haut aber nicht ganz hin. der Code wird ausgeführt, gibt aber dennoch eine fehlermeldung. Ich poste später mal welche genau!
Benutzeravatar
Martin Truckenbrodt
Mitglied
Beiträge: 1143
Registriert: 15.08.2003 23:16
Wohnort: Südthüringen
Kontaktdaten:

Beitrag von Martin Truckenbrodt »

Hallo,
man müßte Genaueres über Dein Vorhaben wissen.

Gruß Martin
Advanced Block MOD 1.1.4 ist released! - Verhindere Spam auf Deinem phpBB3 Board mit Stop Forum Spam, BotScout, Akismet, Project Honey Pot und verschiedenen IP-RBL und Domain-RBL DNS Blacklisten! - Meine MODs - phpBB Complete Core
Antworten

Zurück zu „Coding & Technik“