par
Maxime44710 » 04 juin 2008, 12:45
Bonjour !
Alors voilà, j'aurais besoin d'aide afin de terminer une interface de gestion de serveur pour mes client avec :
-Upload de fichier
-Création de dossier
-Effacement de dossier
-Effacement de fichier
Alors voilà où j'en suis :
http://wolfsite.fr/test/test.php
Le code de ma page :
<?php
// ------------- Script création de dossier
if(isset($_POST['creation']) && !empty($_POST['nom']))
{
//Si un nom de dossier est envoyé, on crée un dossier au bon endroit
$chemin = $_POST['chemin']; //Récupéré dans le champ caché
if(empty($chemin)){$chemin = './';} //Si il est vide, on est à la racine
mkdir($chemin.'/'.$_POST['nom'],0777);
header("Location:test.php?chemin=".$chemin);
}
elseif(isset($_POST['creation']) && empty($_POST['nom']))
{
//Si le nom du dossier est vide
header("Location:test.php?error=nomvide");
}
if(isset($_POST['uploader']))
{
if(!empty($_FILES["fichier_choisi"]["name"]))
{
$chemin = $_POST['chemin']; //Récupéré dans le champ caché
if(empty($chemin)){$chemin = '/';} //Si il est vide, on est à la racine
if(move_uploaded_file($_FILES["fichier_choisi"]["tmp_name"],$chemin.'/'.$_FILES["fichier_choisi"]["name"]))
{
header("Location:test.php?chemin=".$chemin);
}
else
{
//Si on n'a rien uploadé
header("Location:test.php?error=bigerror");
}
}
else
{
//Si on n'a rien uploadé
header("Location:test.php?error=upload");
}
}
//Si on reçoit l'erreur de nom de dossier vide
if(isset($_GET['error']) && $_GET['error'] == 'nomvide')
{
echo 'Une erreur est survenue. Le nom du dossier à créer était vide';
}
// ----------- Ecriture de la liste des fichiers et dossiers
//Récupération du dossier courant
if(isset($_GET['chemin']) && !empty($_GET['chemin']))
{
$folder = $_GET['chemin'].'/';
}
else
{
$folder = './'; //Si jamais il n'y a pas de GET, on commence à la racine
}
?>
<style type="text/css">
<!--
.Style2 {
font-size: 12px;
font-weight: bold;
font-family: Arial, Helvetica, sans-serif;
}
.Style4 {font-size: 12px; font-weight: bold; font-family: Arial, Helvetica, sans-serif; color: #990000; }
.Style5 {
color: #000000;
font-style: italic;
}
-->
</style>
<form name="formulaire_upload" enctype="multipart/form-data" method="post" action="test.php">
<p> </p>
<table width="686" height="137" border="0">
<tr>
<td width="340" height="120" bgcolor="#003399"> <input type="hidden" name="chemin" value="<?php echo $_GET['chemin'];?>">
<span class="Style2">Upload ce fichier : </span><br />
<input type="file" name="fichier_choisi">
<br>
<br />
<input type="submit" name="uploader" value="Uploader"> </td>
<td width="336" bgcolor="#990000"><span class="Style2">Création d'un dossier :</span><br />
<input type="text" name="nom">
<br />
<br />
<input type="submit" name="creation" value="Créer">
</p></td>
</tr>
</table>
</form>
<table width="690" height="175" border="0">
<tr>
<td width="342" height="171"> <input type="hidden" name="chemin" value="<?php echo $_GET['chemin'];?>"><span class="Style4">Contenu de<span class="Style5"> /teamclashtek<?php echo $_GET['chemin'];?> :</span></span><br />
<?php
$dossier = opendir($folder);
while ($Fichier = readdir($dossier))
{
if($Fichier != '.' && $Fichier != '..')
{
//Si le fichier est un dossier, on mets un lien pour aller dedans
if(is_dir($folder.$Fichier))
{
echo '<a href="test.php?chemin='.$folder.$Fichier.'">'.$Fichier.'</a><br>';
}
//Si le fichier n'est pas un dossier, on l'affiche normalement
else
{
echo $Fichier.'<br>';
}
}
}
closedir($dossier);
?></td>
<td width="338"> <p><span class="Style4">Dossier</span><br />
<?php
$dossier = opendir($folder);
while ($Fichier = readdir($dossier))
{
if($Fichier != '.' && $Fichier != '..')
{
//Si le fichier est un dossier, on mets un lien pour aller dedans
if(is_dir($folder.$Fichier))
{
echo $_SERVER['PHP_SELF'];
}
}
}
closedir($dossier);
?>
</p>
</td>
</tr>
</table>
<br /><br />
Bon ma première question étant :
Pour la colonne dossier à droite, comment y afficher tous les dossiers et sous dossier d'un dossier ^^?
C'est à dire, si dans un dossier appeler Dossierclient, il y a un dossier appeler Dossier1 qui a un sous dossier "sous dossier1" il faut que sa apparaisse :
---------------------Dossierclient
--------------Dossier1
--sousdossier1
etc...
(il faut qu'on puisse y acceder aussi)
Bonjour !
Alors voilà, j'aurais besoin d'aide afin de terminer une interface de gestion de serveur pour mes client avec :
-Upload de fichier
-Création de dossier
-Effacement de dossier
-Effacement de fichier
Alors voilà où j'en suis : http://wolfsite.fr/test/test.php
Le code de ma page :
[php]<?php
// ------------- Script création de dossier
if(isset($_POST['creation']) && !empty($_POST['nom']))
{
//Si un nom de dossier est envoyé, on crée un dossier au bon endroit
$chemin = $_POST['chemin']; //Récupéré dans le champ caché
if(empty($chemin)){$chemin = './';} //Si il est vide, on est à la racine
mkdir($chemin.'/'.$_POST['nom'],0777);
header("Location:test.php?chemin=".$chemin);
}
elseif(isset($_POST['creation']) && empty($_POST['nom']))
{
//Si le nom du dossier est vide
header("Location:test.php?error=nomvide");
}
if(isset($_POST['uploader']))
{
if(!empty($_FILES["fichier_choisi"]["name"]))
{
$chemin = $_POST['chemin']; //Récupéré dans le champ caché
if(empty($chemin)){$chemin = '/';} //Si il est vide, on est à la racine
if(move_uploaded_file($_FILES["fichier_choisi"]["tmp_name"],$chemin.'/'.$_FILES["fichier_choisi"]["name"]))
{
header("Location:test.php?chemin=".$chemin);
}
else
{
//Si on n'a rien uploadé
header("Location:test.php?error=bigerror");
}
}
else
{
//Si on n'a rien uploadé
header("Location:test.php?error=upload");
}
}
//Si on reçoit l'erreur de nom de dossier vide
if(isset($_GET['error']) && $_GET['error'] == 'nomvide')
{
echo 'Une erreur est survenue. Le nom du dossier à créer était vide';
}
// ----------- Ecriture de la liste des fichiers et dossiers
//Récupération du dossier courant
if(isset($_GET['chemin']) && !empty($_GET['chemin']))
{
$folder = $_GET['chemin'].'/';
}
else
{
$folder = './'; //Si jamais il n'y a pas de GET, on commence à la racine
}
?>
<style type="text/css">
<!--
.Style2 {
font-size: 12px;
font-weight: bold;
font-family: Arial, Helvetica, sans-serif;
}
.Style4 {font-size: 12px; font-weight: bold; font-family: Arial, Helvetica, sans-serif; color: #990000; }
.Style5 {
color: #000000;
font-style: italic;
}
-->
</style>
<form name="formulaire_upload" enctype="multipart/form-data" method="post" action="test.php">
<p> </p>
<table width="686" height="137" border="0">
<tr>
<td width="340" height="120" bgcolor="#003399"> <input type="hidden" name="chemin" value="<?php echo $_GET['chemin'];?>">
<span class="Style2">Upload ce fichier : </span><br />
<input type="file" name="fichier_choisi">
<br>
<br />
<input type="submit" name="uploader" value="Uploader"> </td>
<td width="336" bgcolor="#990000"><span class="Style2">Création d'un dossier :</span><br />
<input type="text" name="nom">
<br />
<br />
<input type="submit" name="creation" value="Créer">
</p></td>
</tr>
</table>
</form>
<table width="690" height="175" border="0">
<tr>
<td width="342" height="171"> <input type="hidden" name="chemin" value="<?php echo $_GET['chemin'];?>"><span class="Style4">Contenu de<span class="Style5"> /teamclashtek<?php echo $_GET['chemin'];?> :</span></span><br />
<?php
$dossier = opendir($folder);
while ($Fichier = readdir($dossier))
{
if($Fichier != '.' && $Fichier != '..')
{
//Si le fichier est un dossier, on mets un lien pour aller dedans
if(is_dir($folder.$Fichier))
{
echo '<a href="test.php?chemin='.$folder.$Fichier.'">'.$Fichier.'</a><br>';
}
//Si le fichier n'est pas un dossier, on l'affiche normalement
else
{
echo $Fichier.'<br>';
}
}
}
closedir($dossier);
?></td>
<td width="338"> <p><span class="Style4">Dossier</span><br />
<?php
$dossier = opendir($folder);
while ($Fichier = readdir($dossier))
{
if($Fichier != '.' && $Fichier != '..')
{
//Si le fichier est un dossier, on mets un lien pour aller dedans
if(is_dir($folder.$Fichier))
{
echo $_SERVER['PHP_SELF'];
}
}
}
closedir($dossier);
?>
</p>
</td>
</tr>
</table>
<br /><br />[/php]
Bon ma première question étant :
Pour la colonne dossier à droite, comment y afficher tous les dossiers et sous dossier d'un dossier ^^?
C'est à dire, si dans un dossier appeler Dossierclient, il y a un dossier appeler Dossier1 qui a un sous dossier "sous dossier1" il faut que sa apparaisse :
---------------------Dossierclient
--------------Dossier1
--sousdossier1
etc...
(il faut qu'on puisse y acceder aussi)