2011-01-12 7 views
1

Ich habe ein authentifiziertes Verzeichnis in meiner Site, das eine Reihe von Verzeichnissen von Fotos enthält. Wenn Sie sich einloggen, können Sie auf diese Fotos zugreifen.Ist es möglich, relative Pfade mit PHP scandir zu verwenden und wirkt sich die Authentifizierung auf scandir aus?

/admin/galleries/ 

Ich möchte außerhalb des Verzeichnisses eine andere Seite erstellen, die ich als Gast angemeldet zu sehen die Liste der Verzeichnisse in den authentifizierten Verzeichnis gewähren kann.

/guest/access/ 

Ich brauche nur eine einfache Liste der Verzeichnisse im /admin/galleries/ Richt. Ich versuche scandir zu benutzen.

$folderlist = scandir("../../admin/galleries"); 

zurückkehrt Dies nicht false, aber es gibt leer. Ich bin mir nicht sicher warum? Ist es die Authentifizierung in diesem Verzeichnis, die den Zugriff über Scandir blockiert? Ich hätte nicht gedacht, dass das einen Serverprozess wie Scandir beeinflusst hätte.

Ist der relative Pfad ein Problem? Wenn ich ein Dummy-Verzeichnis innerhalb von /guest/access/ mache und den Scandir-Pfad zu scandir(".") ändere, gibt es den Namen dieses Verzeichnisses aus. Aber wenn ich das gleiche Verzeichnis in das Verzeichnis /guest/ verschiebe und scandir in scandir("..") oder scandir("../../guest") ändere, wird es wieder leer. Das lässt mich denken, es ist nicht ein Authentifizierungsproblem, aber etwas mit Scandir selbst?

Antwort

0

Leider zu verwenden, um unbeantwortet, so lange diese Frage verlassen haben:

Es ist nicht leer zurückkehrte, hatte ich einfach nicht die richtigen relativen Pfad in mein Echo Aussagen aufgenommen und hatte sie über eine is_dir() -Anweisung ausgeführt, die false zurückgegeben hat, weil diese Verzeichnisse im lokalen Verzeichnis nicht vorhanden waren. Dummer Fehler.

3

Try dirname(__FILE__) vor Ihrer /../../