• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

relativer pfad

mustang

Mitglied
hi leute,
hab gerade ein problem mit einem realtiven pfad zu einem ordner.
ich habe folgende ordnerstruktur (von meinem websiteordner aus)

upload/

plugins/upload/upload.php

ich möchte jetzt von der upload.php auf den ordner upload zugreifen. habe im script eine stelle, wo der uplaodordner festgelegt ist. dort muss was rein, wie ../../upload/ oder so. ich weiß nicht mehr, wie das war. kann mir jemand den richtigen pfad geben?
danke euch
 
das hatte ich befürchtet. das bringt mich nämlich nicht weiter^^ man man... naja script noch mal machen. irgendwie ist da was nicht ganz richtig.
 
ich habs jetzt mal ganz stark reduziert.
hier mal mein script:

PHP:
move_uploaded_file($_FILES['datei']['tmp_name'], "../../upload/datei.txt");
der wird in der oben aufgeführten upload.php ausgeführt.

ich bekomme folgenden fehler:
Warning: move_uploaded_file() [function.move-uploaded-file]: open_basedir restriction in effect. File(../../upload/datei.txt) is not within the allowed path(s): (/users/robertkalb/temp:/users/robertkalb/www) in /users/robertkalb/www/plugins/dateiupload/upload.php on line 5

ich muss dazusagen, dass mein webspace eine etwas eigenartige ordnerstruktur hat. keine ahnung, ob das daran liebt. bei bplaced.net liegen die daten der website in bplaced.net/users/robertkalb/
habe auch die dateiberechtigungen für den uploadordner gesetzt.
 
Dann gib den absoluten Pfad als Ziel an

Code:
move_uploaded_file($_FILES['datei']['tmp_name'], "/users/robertkalb/www/upload/datei.txt");
 
hm ok... bin nicht der fan von absoluten pfaden, aber document_root ist die lösung :-)
sozusagen relativ absolut :P
 
Das ist Anfangs etwas verwirrend, aber ich versuche es doch mal.

Bsp:
Dein index.php steht im verzeichnis /
Du rufst in der index ein include("plugins/upload/upload.php"); auf.

Fazit:
Für deinen Server hast du / nie verlassen, es wird lediglich die Datei plugins/upload/upload.php gelesen und kein Verzeichniswechsel vorgenommen.
In diesem Fall brauchst du natürlich kein ../../ vor deinem Upload-Pfad

Die Fehlermeldung sieht genau nach diesem Problem aus.

../../ ist NUR notwendig, wenn du auch den Zeiger z.B. mit
PHP:
chdir("plugins/upload");
in das Verzeichnis plugins/upload/ stellst.
 
Zurück
Oben