Problem mit mkdir()

xtramen01

Erfahrenes Mitglied
Hallo Leute,

habe leider ein Problem mit mkdir().
Lokal auf einem Xampp Server funktioniert es prima, aber auf dem Webserver nicht.

Die Ordner haben die Rechte 777 inkl. aller Unterordner.

$temp_dir im Klartext:
Code:
/var/www/vhosts/xxxx/httpdocs/temp/produktbilder/2/f6ujmmpo5amqdda9hkr32mcla0

Folgende Ordnerstruktur existiert bereits:
Code:
/var/www/vhosts/xxx/httpdocs/temp/produktbilder


PHP:
// Pfad zum temporären Bilderverzeichnis
  $temp_dir = DIR_FS_CATALOG . 'temp/produktbilder/' . $customer_id . '/' . session_id();

if($dir == false){
	if (!mkdir($temp_dir, 0, true)) {
    	die('Erstellung der Verzeichnisse schlug fehl...');
	}

Hat mir jemand einen Tipp was ich falsch mache?

EDIT: hab den Fehler gefunden. Es muss heisen: mkdir($temp_dir, 0777, true). Dann geht es.

Gruß
 
Zuletzt bearbeitet:
Jo, und nur zur Erklärung, falls das wieder mal einer findet und interessiert, warum das jetzt ein Fehler ist/war:

mkdir() erstellt Verzeichnisse, wenn sie nicht existieren. Wenn der dritte Parameter (true) nicht gesetzt ist, kann mkdir() nur eine Verzeichnisebene anlegen. Hier sollten aber 2 neue Verzeichnisebenen angelegt werden, ein rekursiver Vorgang. Das true im dritten Parameter bewirkt, dass das Verzeichnis (in diesem Falle "2") und alle angegebenen Unterverzeichnisse (in diesem Falle die Zeichenkette, die session_id() zurückgibt) angelegt werden.
 
Zurück