Toujour probleme pour supprimer repertoire ftp via l'admin de mon site

Eléphanteau du PHP | 36 Messages

07 nov. 2008, 00:55

Bonjour,

Voilà j'ai installer un script de galerie photos , j'ai un espace admin ou je peux ajouter/supprimer/modifier

Quand je clic sur supprimer il ne ce passe rien .

Je pense que cela pourrai venir de certaine fonction qui ne serai pas reconnu .
Pouvez vous voir mon fichier afin de m'aider a trouver ce qui va pas ou essayer une autre methode?

Y'aa t-il un code pour afficher des erreur sachant qu'il ne change pas de fichier quand je clique sur modifier alors qu'il devrai aller sur le fichier supprime afin de confirmer la demande.

Si non je pense qu'il y'a un souci (bon ça je le savais :P ) et qu'il me redirige mais sans me donner l'erreur

Voici le fichier supprimer .
<?php
/**
 @return boolean true si le repertoire $dir et vide, false sinon.
 @param string $dir Nom du repertoire a inspecter.
   @desc Verifie si un repertoire est vide.
**/
function is_empty($dir)
{
$handle = @opendir($dir);
@readdir($handle);
@readdir($handle);
if (false != @readdir($handle)) return false;
else return true;
}

/**
@return -
@param string $dir Nom du repertoire a effacer.
@desc Efface entierement un repertoire. Necessite la fonction is_empty().
 **/
function rm_tree($dir)
{
if ("/" == substr($dir,strlen($dir)-1,1)) $dir = substr($dir,0,strlen($dir)-1);
	if (false == file_exists($dir))
	{
		include 'inc_haut_page.php5';
		
		echo "<font color=\"#FF0000\">Erreur : '".$dir."' n'existe pas.</font><br>\n";
		echo '<a href="index.php5">Retour à la galerie</a>';
		
		include 'inc_bas_page.php5';
	return;
	}

if (is_empty($dir)) // Si dossier vide
{
rmdir($dir);// Efface le dossierz
return;
}

// Sinon parcours le dossier
$handle = @opendir($dir);
@readdir($handle);
@readdir($handle);
while ($file = @readdir($handle))
{
$fichier= $file;
$file = $dir."/".$file;
if (is_dir($file)) // Si c'est un sous-dossier
{
	if (is_empty($file)) rmdir($file); // Si sous-dossier vide, supprime le dossier
	else rm_tree($file); // Si sous-dossier non vide, lance la fonction rm_tree pour effacer ce qu'il contient
} 
else
{
		unlink($file); // Si c'est un fichier efface le fichier
		// modifie la variable photo pour l'adapter à la suppression du commentaire associé
		$photo='c_'.substr($fichier,0,-4);
		// Crée l'objet domdocument
		$doc = new DomDocument('1.0','utf-8');
		// Charge le ui.xml dans le domdocument
		$doc->load('../ui.xml');
		// récupère l'élément racine du document
		$contenu = $doc->documentElement;
		// cherche le commentaire de la photo
		$comment = $contenu->getElementsByTagName($photo)->item(0);
		
// Vérifie si le commentaire existe
if (!empty($comment))
{
// Supprime le commentaire
$supprim = $contenu->removeChild($comment);
// Sauvegarde le nouveau commentaire dans le fichier .xml
$doc->save('../ui.xml');
}
}
}

rmdir($dir); // Efface le sous-dossier vidé
}
$nom_galerie='../galeries/'.addslashes($_GET['galerie']);
rm_tree($nom_galerie);
header('Location: index.php5');
?>
Merci pour votre aide

Eléphanteau du PHP | 26 Messages

07 nov. 2008, 12:08

Pour ne pas être redirigé, commente la dernière ligne (Header etc..)
Pour afficher les erreurs enlève les @ devant les fonctions, tu devrait déjà y voir plus clair.