mkdir() was habe ich vergessen? was übersehe ich?

Amschti

Erfahrenes Mitglied
Hallo zusammen.

Ich bin echt am verzweifeln, seit nun 2 tagen und rund 10 Stunden versuche ich eine ganz einfach php datei zu kopieren! Ich musste sie nicht neu schreiben! ich hatte diese bereits im einsatz und wollte es in einem anderem verzeichnis nun ebenfalls verwenden.

Das erstellen eines Verzeichnisses anhand der idNr funktioniert im anderem Ordner, aber in dem, in der ich zurzeit arbeite nicht. Ich habe auch bereits einfache Buchstaben versucht, also an der Session liegt es nicht.... da kommt was...

Ich habe an Chmod natürlich gedacht. und mit

Code:
substr(sprintf('%o', fileperms(getcwd().'/beschlag')), -4);

steht auch 0777 betreffen dem ordner beschlag! , in der Administation meines webanbieters ist der ordner genau gleich gesetzt wie der andere, nähmlich auf schreiben! Also, an was habe ich nicht gedacht???

Hier die php File!

<?php
PHP:
require("../../pdf/cms/includes/includes_header.php");



$data = array();
 
    $error = false;
    $files = array();
    $uploaddir = 'beschlag/'.$_SESSION['id_lieferant'].'/';
   
    if (!file_exists ($uploaddir)|| !is_dir($uploaddir))
            {
        //      echo "ordner noch nicht vorhanden <br/>";
        //      echo "$uploaddir";
             mkdir ("/$uploaddir");
             }
            
             if(isset($_GET['files']))
{
    foreach($_FILES as $file)
    {
        if(move_uploaded_file($file['tmp_name'], $uploaddir .basename($_SESSION['id_lieferant'].'_'.$file['name'])))
        {
            $files[] = $uploaddir .$_SESSION['id_lieferant'].'_'.$file['name'];
        }
        else
        {
            $error = true;
        }
    }
    $data = ($error) ? array('error' => 'There was an error uploading your files'.substr(sprintf('%o', fileperms(getcwd().'/beschlag')), -4)) : array('files' => $files);
}
else
{
    $data = array('success' => 'Form was submitted', 'formData' => $_POST);
}
echo json_encode($data);
?>
 
Hi

Was passiert, wenn du Errorlevel rauf- und Reporting einschaltest?

PS: Nach 5x Lesen hab ich verstanden, dass das Problem nicht ist, eine PHP-Datei zu kopieren :/
Und was das mit Einzelbuchstaben und Sessions zu tun hat ist mir noch immer ein Rätsel...
 
Er meint vermutlich, dass er statt $uploaddir = 'beschlag/'.$_SESSION['id_lieferant'].'/'; auch so was wie $uploaddir = 'beschlag/foo/'; versucht hat.

Aber ja, Debugging. http://php-de.github.io/jumpto/faq/#debugging

Edit:

Das hier… mkdir ("/$uploaddir"); …ist ein absoluter Pfad ab Systemroot. Die Zeile wäre sicher ein Kandidat für einen Fehler.
 
Also erstmal. Einfach Herrlich, nach Feierabend heimzukommen, und hier antworten zu finden.

Ich werde später dieses Debugging versuchen.

Ich habe es auch mit mkdir ($uploaddir) versucht, funzte auch nicht.

Das interessante ist ja, das GENAU dieser Code in einem anderen Ordner funktioniert. ich vermute auch das es bloss was mit dem Rooting zu tun hat. Ich werde mich früher oder später nochmal melden!

DANKE!!!!
 
Einfach der Hammer.

Ich würde mich jetzt gerne windelweich prügeln ;).... 2 verlorene Abende damit verbracht, einen Fehler den ich ausgeschlossen habe, nicht noch einmal genauer unter die Lupe zu nehmen....
Vielen Dank!
 
Ich habe das slash zeichen zu beginn und am ende des Pfade entfernt... und e volia....

Keine Ahnung weshalb es im anderem Ordner funktioniert :)
 
Zurück