cs_anaa21
Messages postés17Date d'inscriptionlundi 28 août 2006StatutMembreDernière intervention17 juillet 2009
-
20 oct. 2006 à 14:12
cs_anaa21
Messages postés17Date d'inscriptionlundi 28 août 2006StatutMembreDernière intervention17 juillet 2009
-
22 oct. 2006 à 23:41
Bonjourà tous, je suis à la recherche d'un script en php qui me permet de copier le contenu d'un répertoire contenant des images ainsi qu'un sous répertoire. J'ai utilisé la fonction copy() mais elle ne marche pas :s.
Voila le script ke j'ai utilisé:
wizard512
Messages postés459Date d'inscriptiondimanche 9 janvier 2005StatutMembreDernière intervention11 mai 20132 20 oct. 2006 à 14:47
La fonction copy ne permet en aucun cas
au dernière nouvelle de copier un répertoire,
mais pour copier un répertoire, essaye de lister tous les fichiers et sous dossier du répertoire en questions et de les copier vers leur nouvelles distination......
cs_jean84
Messages postés449Date d'inscriptionjeudi 26 août 2004StatutMembreDernière intervention 5 mars 2009 20 oct. 2006 à 18:46
function CopyEntites($RepSrc, $RepDest)
{
// Handle du repertoire source
$Handle = @opendir($RepSrc);
// Listing
while ( $File = readdir($Handle) )
{
// Chemin absolu du fichier/repertoire trouvee et chemin absolu de la destination
$PathSrc = $RepSrc.'/'.$File;
$PathDest = $RepDest.'/'.str_replace(' ', '_', str_replace(' ', '_', $File));
// Si on a trouve un fichier
if ( !is_dir($PathSrc) )
{
$ResCopy = @copy($PathSrc, $PathDest);
if ( !$ResCopy )
echo 'Impossible de copier '.$PathSrc.' vers '.$PathDest.'
';
}
// Ou un dossier
elseif( is_dir($PathSrc) && ($File != '.') && ($File != '..') )
{
// Si on a trouve un dossier, on cree un dossier identique (en virant les espaces) dans le dir de destination
$NewFile = str_replace(' ', '_', $File); // enleve les espaces
$NewFile = str_replace(' ', '_', $NewFile); // enleve la combinaison ALT + 0160
// Creation du repertoire
$ResMk = @mkdir($PathDest.'/'.$NewFile, 0777);
if ( !$ResMk )
echo 'Impossible de copier le repertoire '.$NewFile.' vers '.$PathDest.'<r>';
else
CopyEntites($PathSrc.'/'.$NewFile, $PathDest.'/'.$NewFile);
}
}
cs_jean84
Messages postés449Date d'inscriptionjeudi 26 août 2004StatutMembreDernière intervention 5 mars 2009 21 oct. 2006 à 19:07
Les premieres choses a modifier par exemple et la boucle while() => while ( ($File =readdir($Handle)) !== FALSE)
te permettra d'eviter quelques bugs (pas vrai Malalam ;-)) ...
Comme l'a si bien dit Wizard, appelle nous si tu as un probleme dans l'adaptation du code ;-)