Bonjour,
j'essaie de modifier mon portfolio en d'autre terme je veux supprimer le dossier portfolio et remplacer au besoin mais la fonction rmdir() ne fonction pas car il y'a des fichiers. y'a t'il une fonction pour supprimer les fichiers en bloc ou le dossier...

Ce que je fais

Décrivez ici votre code ou ce que vous cherchez à faire

Entourez votre code pour bien le mettre en forme

Ce que je veux

Décrivez ici ce que vous cherchez à obtenir

Ce que j'obtiens

Décrivez ici vos erreurs ou ce que vous obtenez à la place de ce que vous attendez :(

3 réponses


Bonjour.
J'espère que le script qui doit effectuer cette commande ne se trouve pas dans le dossier portfolio, car dans ce cas là ça ne pourra jamais fonctionner.
Il te faut d'abord supprimer les fichiers avant de vouloir supprimer un dossier, tu ne peux pas faire autrement.

ouatoo
Auteur

les fichiers sont inserrés en boucle donc je n'arrive pas "a supprimé directement
//essaie de traitement portfolio
$name_folio = $files['name'];
$tmp_name_folio = $files['tmp_name'];
$error_folio =$files['error'];
if(count($tmp_name_folio ) === 3 || count($tmp_name_folio ) === 6){
for($i =0 ;$i< count($tmp_name_folio);$i++){
$name_folio_ex[$i] = explode('.',$name_folio[$i]);
$name_folio_ext[$i]= strtolower(end($name_folio_ex[$i]));

if(in_array($name_folio_ext[$i],['jpg','jpeg','png','gif'])){
    if($error_folio[$i] === 0){
        $name_folio_new[$i] =  uniqid('', true).'.jpg';
        $directionFinal1 = 'assets/img/'.$name_folio_new[$i];
       move_uploaded_file($tmp_name_folio[$i], $directionFinal1) ;
       $directionFinal2 = $directoryfolio.'/'.$name_folio_new[$i];
     if(file_exists($directionFinal2)){
         unlink($directionFinal2);
         Img::creerMin($directionFinal1,$directoryfolio,$name_folio_new[$i]);
     } else{
        Img::creerMin($directionFinal1,$directoryfolio,$name_folio_new[$i]);  
     } 
    }else{
        $errors ='une erreur c\'est produite'; 
        $Session->setFlash($errors);
    }
}else{
    $errors ='le format du fichier n\'est pas accepter     ';
    $Session->setFlash($errors);
}

}
}else{
$errors = 'vous dévez soumettre 3 ou 6 photos.';
$Session->setFlash($errors);
}

ouatoo
Auteur

oh confinement oblige , j'ai fini par trouver une solution, je vais utiliser la fonction glob() pour recuperer les fichiers et les supprimer un par un . merci bcp.