Includieren von Seiten um Unterverzeichnis

Joke28

Grünschnabel
N'abend zusammen,
ich habe ein kleines Problem (denk, dass es nur zwei drei Befehle sind), aber ich komm nicht weiter.

Habe eine kleine Seite in PHP geschrieben (http://www.sebastian-beyer.de/cop). Jetzt habe ich links das Menü und wenn man auf einen Link klickt steht dafür ja im Code folgendes:

Code:
<td class="td"><a href="index.php?show=guestbook"> &middot; G&auml;stebuch</a></td>

Jetzt möchte ich den Link aber zu einer Datei in einem Unterverzeichnis setzen, da mein Gästebuch in dem Unterordner "gb" auf dem Server gespeichert ist!
Benutze dazu dann folgenden Code:

Code:
<td class="td"><a href="index.php?show=gb/index"> &middot; G&auml;stebuch</a></td>

Wenn ich jetzt aber den Link auf der Seite anklicke, dann bekomme ich folgende Fehlermeldung:

Code:
Warning: main() [function.main]: Unable to access config.inc.php in /home/www/htdocs/sebastian-beyer.de/cop/gb/index.php on line 8

Warning: main(config.inc.php) [function.main]: failed to create stream: No such file or directory in /home/www/htdocs/sebastian-beyer.de/cop/gb/index.php on line 8

Fatal error: main() [function.main]: Failed opening required 'config.inc.php' (include_path='') in /home/www/htdocs/sebastian-beyer.de/cop/gb/index.php on line 8

Was ist an meinem Code falsch, oder wie kann oder muss ich das ändern, damit es endlich funktioniert? Ich weiß mir nicht mehr weiterzuhelfen.
(Jemand brachte mich schon auf die Idee einer Weiterleitung, aber das geht auch irgendwie nicht).
Ich wäre euch für jede Hilfe und jeden Tipp dankbar.

mfg Sebastian
 
Wenn ich jetzt mal wüsste, was dann nun wieder ist :rolleyes:

In der Index.php steht folgendes:

Code:
<?php



include "oben.php";

if(!isset($show)) {

$show = "start";

}
 
Zuletzt bearbeitet:
hi,

gib einfach als Link

<a href="/gb/index.php">

anstatt

<a href="index.php?show=gb/index">

ein. Dann funktioniert es bestimmt.
 
Und dann öffnet er doch aber nur die entsprechende Seite und includiert das nicht. Oder?

Ich hab das jetzt erstmal mit I-Frames gelöst!

Gruß Sebastian
 
ups sorry,

das mit dem Includieren hab ich ganz übersehn.

Nun, wenn du die Index-Datei des GB ins Rootverzeichniss includierst, dann stimmen die Pfadangaben für das GB nicht mehr.

Er sucht dann halt z.B. die config.inc.php in ./ statt in ./gb/

Du musst also im Prinzip die Pfadangaben des GB anpassen und überall das ./gb/ davorsetzen. Allerdings kannst du dann das GB nicht mehr direkt im Verzeichniss aufrufen, da dann die Pfade wieder nicht stimmen.
 
Wenn du z.B. aus Sicherheitsgründen den Aufruf in /gb verhindern willst,
dann ist diese o.g. relative Pfadangabe ein guter Weg.

Wenn du beide Aufrufe möglich machen willst, dann mußt du absolute Pfadangaben verwenden.
PHP:
require_once($_SERVER["DOCUMENT_ROOT"].'/pfad/zur/gb/datei');
 
Zurück