2016-07-09 11 views
0

Hier ist mein Code, was ich versuche zu tun ist, nehmen Sie die Datei post.php oder $file aus dem Stamm des Verzeichnisses, aus dem es ursprünglich stammt, dann legen Sie es in diesem uniqueID-Verzeichnis oder es sollte schließlich in der $newFolder5 Variable ankommen, um abzuschließen. Die $root in der! -Copy-Funktion ist ein Pfad, der auf die Datei im aktuellen Verzeichnis verweist, dann sollte es das Verzeichnis $newFolder5 gehen, wenn die Kopierfunktion beim Laden der Seite ausgeführt wird. Kann $root oder die Quelle der Kopie eine Zeichenfolge mit einem Verzeichnis in der Datei sein?PHP-Kopierfunktion von einem Ordner zum anderen

<?php 
$unique = uniqid(); 
$root = '/gallry/' . $dir_auth1 . '/'. 'post.php'; 
$folder = mkdir($unique, 0755); 
$uniqueFolder = '/' . $unique . '/' . 'post.php'; 
$destination2 = $dir_auth1 . '/' . $unique . '/' . 'post.php'; 
$newFolder = '/' . $dir_auth1 . $uniqueFolder; 

if (!copy($root, $newFolder)) { 
    echo " status not created."; 

} else { 
    echo "Success!"; 


} 
?> 

I $dir_auth1-'aidan' geändert, da dass das Root-Verzeichnis ist, dass die post.php in ist.

Kurz gesagt, was Im versuchen zu tun ist, um einen Ordner/Verzeichnis mit einem uniqid() erstellen und setzte post.php innen davon. Oder kopiere es.

+0

Warum verwenden Sie '$ Ordner' in der Zuordnung zu' $ Ordner5'? '$ folder' ist nur' TRUE' oder 'FALSE', je nachdem, ob' mkdir' erfolgreich war, es ist nicht der Name von irgendetwas. – Barmar

+0

Sie vergeben viele Variablen, die Sie nie verwenden, wodurch der Code sehr unübersichtlich wird. Kannst du all die unnötigen Sachen loswerden, damit wir sehen können, was du wirklich tust? – Barmar

+0

Das zweite Argument von 'copy()' muss der Dateiname im Zielverzeichnis sein, nicht nur der Verzeichnisname. – Barmar

Antwort

1

Sie erstellen nicht das gleiche Verzeichnis, in das Sie kopieren möchten.

$unique = uniqid(); 
$root = "/gallry/$dir_auth1/post.php"; 
$uniqueFolder = "/$dir_auth1/$unique"; 
$destFile = "$uniqueFolder/post.php"; 
if (mkdir($uniqueFolder)) { 
    if (copy($root, $destFile)) { 
     echo "Success!"; 
    } else { 
     echo " status not created"; 
    } 
} else { 
    echo "Unable to create folder $uniqueFolder"; 
} 
+0

$ unique wird nicht verwendet ... – aidangig

+0

Es liegt in der Zuweisung zu '$ uniqueFolder'. – Barmar

+0

Ich entfernte die Strings hinzugefügt ersetzt sie entsprechend mit den Variablen. Bitte schauen Sie, und Sie haben $ unique nicht richtig definiert, aber ich habe es behoben. '$ unique = uniqid(); $ root = "/gallry/".$dir_auth1."/post.php"; $ uniqueFolder = "/".$dir_auth1."/".$unique; $ destFile = $ uniqueFolder. "/ Post.php"; if (mkdir ($ uniqueFolder)) { if (Kopie ($ root, $ destFile)) { echo "Erfolg!"; } else { echo "Status nicht erstellt"; } } else { echo "Kann den Ordner $ uniqueFolder nicht erstellen"; } ' – aidangig

Verwandte Themen