Supprimer plusieurs fichier

fabrice88
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 289
Inscription: 15 Oct 2007

Supprimer plusieurs fichier

Message le Ven Aoû 20, 2010 13:05

Bonjour,
sur mon site j'affiche le contenu d'un répertoire (tous les fichiers mp3 qui sont dedans)
je voudrai lorsque j'affiche le contenu du répertoire ajouter un case a cocher qui permettrait de supprimer les fichiers qui seraient coché.

mon code pour le moment est le suivant.

Code: Tout sélectionner
<?php
if($_POST['supprimer_fichiers'] != ""){
/// on récupère le nombre d'éléments postés
$fichiers = array_values($_POST);
$nbre_fichiers = count($fichiers);
/// On enlève la valeur du bouton (car il fait parti des valeurs postées)
$nbre_fichiers = $nbre_fichiers-1;
// on fait la boucle pour supprimer
for($k=0; $k<= $nbre_fichiers; $k++){
unlink($fichiers[$k]);
}
}
  ?>
   
   <?php

// si tes fichiers sont dans ./mp3/ et que l'on ne veu que les fichiers d'extension .mp3 (et pas les fichiers ayant une autre extension)
$dossier = '../podcast/top40/';
$extension = '.mp3';

$masque = $dossier.'*'.$extension;
//Tableau des fichiers .mp3   
$tab = glob("$masque");
natsort($tab);

// Construction du tableau des résultats
$tab_nom_desc = array();
$i=0;
foreach ($tab as $fichier)
{
        $fich = basename($fichier,$extension);// suppression du nom de dossier et de l'extension
        $fich = str_replace('-',' ',$fich);// remplacement des - par un espace
        $fich = explode('_',$fich);// Cf fonction explode

        $nom = $fich[0];
        $desc = isset($fich[1])? $fich[1] : '';
       
        $tab_nom_desc[$i]['nom'] = $nom;
        $tab_nom_desc[$i]['desc'] = $desc;
        $tab_nom_desc[$i]['lien'] = $fichier;
       
        $i++;
}
?>
<form method="post" enctype="multipart/form-data" action="#">
<table border="0" cellspacing="5" cellpadding="0">
  <tr>
    <th scope="col"></th>
    <th scope="col"></th>
    <th scope="col">Artiste</th>
    <th scope="col">Titre</th>
    <th scope="col">Extrait</th>
    <th scope="col">Poids</th>
  </tr>
<?php
$j=0;
//lecture des résultats
foreach ($tab_nom_desc as $value)

?> 
  <tr>
    <td bgcolor="#D6D6FE">
   <input type="checkbox" name="suppr_<?php echo $j; ?>" value="<?php echo $value['lien']; ?>" id="supp" />
    </td>
    <td bgcolor="#D6D6FE"><?php $j++; echo $j; ?></td>
    <td><?php echo htmlentities(strtoupper($value['nom'])); // strtoupper pour tout en majuscule ?></td>
    <td><?php echo htmlentities(ucfirst($value['desc'])); // ucfirst pour mettre majuscule en debut ?></td>
    <td>
            <object type="application/x-shockwave-flash" data="dewplayer.swf?mp3=<?php echo $value['lien']; ?>" width="200" height="20" id="dewplayer">
            <param name="wmode" value="transparent" />
            <param name="movie" value="dewplayer.swf?mp3=<?php echo $value['lien']; ?>" />
           </object>    </td>
    <td>
   <?php
   $sizeo = filesize ($value['lien']);
   $size1 = ($sizeo / 1000000);
   $size = round($size1, 1);
   echo $size.' Mo';
   ?></td>
  </tr>
<?php } ?> 
</table>
<input name="supprimer_fichiers" type="button" value="Supprimer les fichiers" />
</form>


Le soucis et que les fichiers que je cocje ne se supprime pas !!!! POURQUOI ?


KOogar
WRInaute accro
WRInaute accro
 
Messages: 3974
Inscription: 16 Nov 2004

Re: Supprimer plusieurs fichier

Message le Sam Aoû 21, 2010 6:31

fais une sortie print du chemin et corrige, car celui ci doit etre faux

Code: Tout sélectionner
for($k=0; $k<= $nbre_fichiers; $k++) {
echo $fichiers[$k];
}

fabrice88
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 289
Inscription: 15 Oct 2007

Re: Supprimer plusieurs fichier

Message le Sam Aoû 21, 2010 9:21

bonjour, en fait c'était le bouton de validation qui était faux. Je l'ai changé et sa fonctionne très bien.
Merci


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités