8791 sujets

Développement web côté serveur, CMS

Bonjour cher amis,

Je souhaiterais savoir comment faire pour supprimer un sous-dossier (avec des fichiers dedans) d'un dossier que j'ai nommé "upload", lui même contenant plusieurs sous-dossier.
Par exemple, disons que j'ai 3 dossiers plein d'images dans mon dossier "upload", dont les noms seraient respectivement "photo", "peinture" et "sculpture". Chacun de ces dossiers contient comme je l'ais préciser des fichiers. Je souhaiterais savoir comment faire pour supprimer par exemple le fichier "photo" avec son contenu.

Pour le moment, j'arrive à supprimer le dossier en question, mais aussi ses voisins et même mon dossier "upload", donc pas très... pertinent.

Merci d'avance de vos réponses, bien cordialement, Tilk2233.

PS : voici ma fonction PHP ($dossier étant le nom de dossier à supprimer, soit "upload/photo" par exemple):

function clearDir($dossier){
		$ouverture=@opendir($dossier);
		if (!$ouverture) return;
		while($fichier=readdir($ouverture)) {
			if ($fichier == '.' || $fichier == '..') continue;
				if (is_dir($dossier."/".$fichier)){
					$r=clearDir($dossier."/".$fichier);
					if (!$r) return false;
				}
				else {
					$r=@unlink($dossier."/".$fichier);
					if (!$r) return false;
				}
		}
	closedir($ouverture);
	$r=@rmdir($dossier);
	if (!$r) return false;
		return true;
	}
il y a deux classes dans joomla , JFile et JFolder , qui contiennent toute les méthodes pour manipuler facilement les fichiers et dossier. tu pourra t en inspirer , même si ils dépendent des autres classes joomla ...

tu peux télécharger le code source ici (http://www.joomla.org/download.html) , tu les trouvera dans les dossiers

\libraries\joomla\filesystem\file.php
\libraries\joomla\filesystem\folder.php


Cordialement ,
Tarak .
Modifié par tarak (07 Aug 2011 - 02:49)