Effacer dossiers et fichiers récalcitrants

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 560 fois - Téléchargée 18 fois

Contenu du snippet

Qui n'a pas eu ce problème un jour, un dossier ou un fichier que votre client FTP ne peut pas effacer, en vous sortant un joli message "error 550". C'est une question de droits.. Ces fichiers ont été créés par le serveur via un script que vous avez précédemment utilisé. Il va donc falloir utiliser le même principe pour les effacer.
Placez ce script dans un fichier exemple "supp.php" et placez-le à la racine des dossiers que vous souhaitez effacer
!!!!!!!!!!!!!!!!!!
Il effacera tous les fichiers et dossiers, y compris lui-même, situé à son niveau et en dessous.

Source / Exemple :


<? function supp($target,$verbose=false) {
  $exceptions = array('.','..');
  if (!$sourcedir=@opendir($target)) {
    echo "<strong>Erreur : ouverture impossible ($target)</strong><br />\n";
    return false;
  }
  while(false!==($sibling=readdir($sourcedir))) {
    if(!in_array($sibling,$exceptions)) {
      $object=str_replace('//','/',$target.'/'.$sibling);
      if(is_dir($object)) supp($object);
      if(is_file($object)) {
        echo '<strong>'.$object."</strong> : ";
        $result=@unlink($object);
        if ($result)echo "Fichier supprimé<br />\n";
          else echo "<strong>!!! Suppression du fichier impossible</strong>\n";
      }
    }
  }
  closedir($sourcedir);
  if($result=@rmdir($target)) {
    echo "Suppression terminée<br /><hr>\n";
    return true;
  }
}

supp("./", true); ?>

Conclusion :


Le petit script utile pour réinitialiser son espace web ...

Je n'en suis pas l'auteur (trouvé avec grande difficulté, sur ce post "http://www.conseil-creation.com/forums/ftopic739-0-asc-15.php"

A voir également

Ajouter un commentaire

Commentaires

cs_spoonisback
Messages postés
72
Date d'inscription
vendredi 14 mai 2004
Statut
Membre
Dernière intervention
5 février 2010
-
Salut
j'ai parcouru rapidement, mais je crois que tu créer une var ($verbose pour mode verbose je suppose) dont tu ne te ressert pas...?

Petit oubli ?
cs_Stephane33
Messages postés
630
Date d'inscription
samedi 15 février 2003
Statut
Modérateur
Dernière intervention
9 octobre 2011
-
Exact, elle ne sert pas à grand chose ici.

La sortie du script n'est très jolie aussi, vu qu'il s'efface lui même.

Disons que c'est une solution radicale.
masternico
Messages postés
494
Date d'inscription
dimanche 5 octobre 2003
Statut
Membre
Dernière intervention
1 septembre 2011
-
lol...
radicale est le mot.
C'est un script à garder sous le coude en cas de coup dur (lequel?) pour ceux qui aime vivre dangereusement.
jl59128
Messages postés
1
Date d'inscription
lundi 16 mars 2009
Statut
Membre
Dernière intervention
27 juillet 2009
-
Ce script est tout simplement énorme.
Enfin débarrassé des vieux dossiers qui trainaient sur mon serveur. Merci.
cs_Stephane33
Messages postés
630
Date d'inscription
samedi 15 février 2003
Statut
Modérateur
Dernière intervention
9 octobre 2011
-
"C'est un script à garder sous le coude en cas de coup dur (lequel?) "
Je n'ai pas trouvé d'autres méthodes pour supprimer des dossiers et fichiers créés par Apache
Lorsque par exemple tu installes spip sur un serveur via le script d'installation, c'est ce dernier qui créé les dossiers et fichiers. Tu ne peux donc pas les effacer, car créés par le code c'est apache qui en est le propriétaire?

C'est clair c'est radical....

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.