Beschreibbarer Ordner erstellen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
administrator
befinden
beispiel
benutzer
besitzer
bild
code
datei
eintragen
frage
gruppe
mysterium
nutzer
ordner
unterscheiden
verkleinern
verzeichnis
wissen
zahl
zugreifen
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Also um das Mysterium in deinem Kopf etwas zu verkleinern, will ich das mal auseinanderpflücken, in unserem Beispiel befinden wir uns im Ordner /var/www und wollen darin eine Ordnerstruktur aufbauen, die so aussieht: /var/www/memberFiles/id1 ok?
Dann müssten wir wissen, wer welche Rechte auf diesen Ordner hat, dazu gibt es in unixoiden systemen (Linux, Unix etc), eine ausgefeilte Rechteverteilung, ich erkläre Sie kurz:
Während Windows nur Benutzer und Administrator kennt und diese auch nicht wirklich unterscheiden kann gibt es auf Linux 3 getrennte Nutzergruppen und den Administrator:
* Besitzer ( diser Nutzer hat meistens auch die Datei erstellt )
* Gruppe ( hiermit ist die Gruppe gemeint, in der der Besitzer ist, sowie alle anderen Nutzer die in dieser Gruppe sind )
* Andere ( alle anderen Nutzer die auf die Datei zugreifen wollen )
Diese Nutzergruppen können nun verschiedene Rechte bekommen: Keine, Lesen, Schreiben und, wenn es eine Datei ist, ausführen
Die Rechte kann man nun in Zahlen ausdrücken:
keine = 0
lesen = 1
schreiben = 2
ausführen = 4
addiert man nun die Rechte bekommt man eine weitere Zahl zum Beispiel darf der Besitzer die Datei lesen und schreiben: 1 + 2 = 3;
oder er darf die Datei lesen und ausführen: 1 + 4 = 5;
So nun wissen wir wie die Rechte verteilt werden, wenn also PHP den Ordner erstellt und auch nur(!) ein PHP-Prozess auf diesen zugreifen muss, dann reichen die Rechte: schreiben und lesen für den Besitzer, da PHP ja der Besitzer ist, wenn die Datein aber auch als PHP-Code ausgeführt werden sollen müssen sie außerdem noch ausführbar sein! Der rest braucht nichts davon! (Ich weiß ja nicht wozu du das Verzeichnis benutzen willst, darum gehe ich mal davon aus, das nur PHP darauf zugreifen muss und sie lediglich lesen und schreiben will.)
So da das Verzeichnis ja mehrer Ebenen tief ist brauchen wir zusätzlich noch den Rekursivparameter, dieser ist Standardmäßig false, muss aber für unser Beispiel true sein.
Somit sähe die Funktion so aus:mkdir('./memberFiles/id1', 0600, true);
Ich hoffe das ich nicht zu unverständlich war, ansonsten musst du halt einfach nochmal nachfragen.
Beitrag zuletzt geändert: 16.10.2010 16:54:28 von nemoinho -
ok habe alles verstanden danke...
und es funtioniert jetzt auch!
aber jetzt habe ich noch eine frage, ich hätte gern das der ordner immer 3 standard bilder enthält. kann ich das machen das die automatisch hinzugefügt werden? -
wie wäre es mit einem copy befehl?
Du kopierst nachdem du den Ordner erstellt hast einfach die Bilder rein
mkdir('./memberFiles/id1', 0600, true); copy ("bild.jpg","meberfiles/id1/"); ...
-
wo muss sich dann das bild befinden? im root?
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage