Seite 1 von 1
Verlinkung auf Rootverzeichnis funktioniert nicht
Verfasst: 01.09.2012, 09:56
von maks98
Hallo,
in einem Unterverzeichnis befindet sich eine Php-Datei:
Bsp.
Innerhalb dieser Datei befindet sich eine Include-Funktion, die eine Html-Datei aus dem Root-Verzeichnis aufruft:
Bsp.
Code: Alles auswählen
<?php include("/ordner_1/ordner_2/html_datei.html");?>
Allerding funktioniert es nicht (???)
Verfasst: 01.09.2012, 10:04
von ThatsLife
Nimm den Server Pfad zu der Datei. /home/webserver_bla/etcblabla/
Verfasst: 01.09.2012, 10:11
von maks98
Danke für Feedback.
Wie finde ich den ServerPfad aus?
Verfasst: 01.09.2012, 10:15
von ThatsLife
Entweder von deinem Hoster oder:
info.php
Re: Verlinkung auf Rootverzeichnis funktioniert nicht
Verfasst: 01.09.2012, 10:24
von bbnetch
maks98 hat geschrieben:in einem Unterverzeichnis befindet sich eine Php-Datei:
die eine Html-Datei aus dem Root-Verzeichnis aufruft:
also aus einem unterverzeichnis willst du zurueck auf root.
dann muesste das doch ausreichen:
oder verstehe ich jetzt was falsch?
bei deinem beispiel hast allerdings beide im selben verzeichnis, da sieht man kein zusaetzliches unterverzeichniss.
Verfasst: 01.09.2012, 10:48
von Melegrian
ThatsLife hat geschrieben:
Hast Du da nicht etwas vergessen?
@maks98
Kannst Du auch so abfragen:
Code: Alles auswählen
<?php
echo $_SERVER["DOCUMENT_ROOT"]."<br>\n";
echo $_SERVER["SCRIPT_FILENAME"]."<br>\n";
?>
Verfasst: 01.09.2012, 10:50
von ThatsLife
Tatsache, ich war schon wieder wo anders

Verfasst: 01.09.2012, 11:24
von maks98
also aus einem unterverzeichnis willst du zurueck auf root.
dann muesste das doch ausreichen:
Code:
<?php include("../html_datei.html");?>
oder verstehe ich jetzt was falsch?
Solche Lösung (Ein direkter Link auf Root-Verzeichnis ist mir lieber. Das habe ich ausprobiert - mit einem Unterordner funktioniert es. Allerdings befindet sich meine Php-Datei in einem "dreifachen" Unterordner:
und ein direkter Link (über drei Ordner) funktioniert nicht
Code: Alles auswählen
<?php include("../ordner_1/ordner_2/html_datei.html");?>
Verfasst: 01.09.2012, 11:40
von Melegrian
Dann teste doch den Pfad erst einmal mit file_get_contents, damit sollte eine Ausgabe erst einmal funktionieren.
Code: Alles auswählen
<?php
$datei = file_get_contents("/ordner_1/ordner_2/html_datei.html");
echo $datei;
?>
Verfasst: 01.09.2012, 11:46
von maks98
Das klappt nicht:
1.
Code: Alles auswählen
[function.include]: failed to open stream: No such file or directory in
2.
Code: Alles auswählen
[function.file-get-contents]: failed to open stream: No such file or directory in
Verfasst: 01.09.2012, 11:53
von Melegrian
Also bei mir klappt beides problemlos unter Localhost.
a.html liegt im Root
und die test.php mit include liegt: /verzeichnis1/verzeichnis2/test.php
Code: Alles auswählen
<?php
// $datei = file_get_contents("../../a.html");
// echo $datei;
include("../../a.html");
?>
Verfasst: 01.09.2012, 11:53
von bbnetch
na heisst doch das der pfad auf jedenfall fallsch ist.
dort findet er nix!
bist du sicher das du dich nicht vertippt hast, gross und kleinschreibung bei linux.
Verfasst: 01.09.2012, 12:08
von Melegrian
Klappt alles unter Localhost, egal wie ich es schreibe:
Code: Alles auswählen
<?php
// $datei = file_get_contents("../../a.html");
// echo $datei;
// include("../../a.html");
// $datei = file_get_contents("/xampp/htdocs/a.html");
// echo $datei;
include("/xampp/htdocs/a.html");
?>
Re: Verlinkung auf Rootverzeichnis funktioniert nicht
Verfasst: 01.09.2012, 12:38
von Melegrian
maks98 hat geschrieben:Innerhalb dieser Datei befindet sich eine Include-Funktion, die eine Html-Datei aus dem Root-Verzeichnis aufruft:
Bsp.
Code: Alles auswählen
<?php include("/ordner_1/ordner_2/html_datei.html");?>
Wenn die Datei html_datei.html im Root liegt, dann kann sie nicht im /ordner_1/ordner_2/html_datei.html liegen. Entweder ist sie dann mit relativen Angaben unter ../../html_datei.html zu finden oder mit Serverpfaden wie bei meinem Beispiel unter /xampp/htdocs/html_datei.html.
Verfasst: 01.09.2012, 13:20
von maks98
Mit dieser Schreibweise klappt es wunderbar
Danke an Alle!!!