aide sur une navigation dans une arborescence
Posté : 21 juin 2007, 09:08
Bonjour tout le monde, désolé d'attaquer de si bon matin....
Voilà j'explique mon problème, je voudrais que l'utilisateur (un superadmin) puisse naviguer dans une arborescence en cliquant simplement sur le nom du dossier (un peu genre l'arbo de windows). Puis lorsqu'il est dans le répertoire qu'il souhaite, il peut soit créer un répertoire soit en supprimer un.
Voici pour l'instant mon code :
Voilà j'explique mon problème, je voudrais que l'utilisateur (un superadmin) puisse naviguer dans une arborescence en cliquant simplement sur le nom du dossier (un peu genre l'arbo de windows). Puis lorsqu'il est dans le répertoire qu'il souhaite, il peut soit créer un répertoire soit en supprimer un.
Voici pour l'instant mon code :
<?
//on vérifie que l'utilisateur s'est bien identifié
//s'il s'agit d'un administrateur admin ou sadmin
if ((isset($_SESSION['admin'])) or (isset($_SESSION['sadmin'])))
{
//on récupère tous les fichiers, qui sont dans le répertoire directory,
//on les stocke dans un tableau et on les affiche à l'écran
if( (!isset($_POST['dirname_add'])) && (!isset($_POST['dirname_delete'])) )
{
//on définit la variable path
$path = getcwd();
//on appelle la fonction
list_dir($path);
}
//création d'un répertoire
if(isset($_POST['dirname_add']))
{
$path = getcwd();
$dirname = $_POST['dirname_add'];
//on supprime les accents
$dirname = strtr($dirname,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
mkdir_recursive($path.'/'.$dirname);
list_dir($path);
}
//suppression d'un répertoire
elseif(isset($_POST['dirname_delete']))
{
$path = getcwd();
$dirname = $_POST['dirname_delete'];
//on supprime les accents
$dirname = strtr($dirname,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
full_rmdir($path.'/'.$dirname);
list_dir($path);
}
?>
<!-- formulaire de création d'un répertoire-->
<form method="post" action="directory.php">
<fieldset>
<legend><? echo DIRECTORY_FORM_CREATE; ?></legend>
<p><label for="dirname_add"><? echo DIRECTORY_NAME_CREATE; ?></label><input type="text" name="dirname_add" /></p>
<p><input type="submit" name="valider" value="Créer le répertoire" /></p>
</fieldset>
</form>
<!-- fin de formulaire de création de répertoire-->
<br />
<!-- formulaire de suppression d'un répertoire-->
<form name="suppr" method="post" action="directory.php" onSubmit="return confirmation();">
<fieldset>
<legend><? echo DIRECTORY_FORM_DELETE ?></legend>
<p><label for="dirname_delete"><? echo DIRECTORY_NAME_DELETE; ?></label><input type="text" name="dirname_delete" /></p>
<p><input type="submit" name="valider" value="Supprimer le répertoire" /></p>
</fieldset>
</form>
<!-- fin de formulaire de suppression de répertoire-->
<br /><br />
<!-- formulaire pour retourner à l'accueil de l'admin-->
<form method="post" action="../home.php">
<legend><? echo DIRECTORY_RETURN_FORM; ?></legend>
<p><input type="submit" name="retour" value="Retourner au menu d'administration"></p>
</form>
<!-- fin du formulaire de retour-->
<?
//si la personne n'a pas le droit d'accéder à cette page
}
else
{
header("Location: ../index.php"); //on l'a renvoi sur la page d'accueil
exit();
}
Ce code ne marche que lorsqu'on est à la racine, il n'y a pas de navigation. Comment faire ? Pouvez-vous m'aider à élaborer ce petit truc car je n'ai pas trouvé de réponse à mon problème sur ce forum.