Bonjour,
J'ai recupere un script en php pour permettre la copie d'un dossier.
Malheureusement il me copie que les fichiers et il n'arrive pas a copier les dossiers.
La fonction est recursif. Donc je pense que la recursivité ne fonctionne pas mais je ne trouve pas l'erreur pouvez vous l'aider.
Voici mon code:
et voici les erreurs qu'il me mets :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 <? // loc1 is the path on the computer to the base directory that may be moved define('loc1', 'C:/Program Files/EasyPHP1-8/www/', true); function copy_dir ($dir2copy,$dir_paste) { // On vérifie si $dir2copy est un dossier if (is_dir($dir2copy)) { // Si oui, on l'ouvre if ($dh = opendir($dir2copy)) { // On liste les dossiers et fichiers de $dir2copy while (($file = readdir($dh)) !== false) { if (!is_dir($dir_paste)) mkdir($dir_paste,0700); // Si le dossier dans lequel on veut coller n'existe pas, on le créé if((is_dir($dir2copy.$file)) && ($file != '..') && ($file != '.')) // S'il s'agit d'un dossier, on relance la fonction récursive copy_dir ( $dir2copy.$file , $dir_paste.$file ); elseif(($file != '..') && ($file != '.')) // S'il sagit d'un fichier, on le copie simplement copy ($dir2copy.'/'.$file , $dir_paste.'/'.$file ); } // On ferme $dir2copy closedir($dh); } } } ?>
Warning: copy(dotclear_vierge/inc): failed to open stream: Permission denied in c:\program files\easyphp1-8\www\installbis.php on line 24
et ainsi desuite pour chaque dossier. inc est un dossier contenant des fichier et des sous dossier.
Pouvez-vous m'aider??
Lila
Partager