Exécution d'un include

Résolu
delaville81 Messages postés 195 Date d'inscription   Statut Membre Dernière intervention   -  
delaville81 Messages postés 195 Date d'inscription   Statut Membre Dernière intervention   -
Cher confrères,
Encore une fois, je sollicite votre aide pour un souci.
Dans un cadre de développement, je créer des galleries photos.
Lors de l'ajout, je génère un fichier .zip content les photos (ça marche)
Lorsque je modifie ma gallerie en supprimant des photos, je re génère le .zip avec la modification des photos supprimées. Mais là problème j'ai toujours les photos supprimées.

Pour la suppression
if(isset($_POST['del'])){
			if ($_POST['del_photo'] != ''){
				for ($i=0; $i < count($_POST['del_photo']); $i++) {
					$sql_img = 'SELECT id_photo, id_user, id_album, img, tn_img FROM photos_album WHERE id_photo = '.$_POST['del_photo'][$i].'';
					$pdo->exec('SET NAMES utf8');
					$resu = $pdo->query($sql_img);
					$row = $resu->fetch();
					$id_photo = $row['id_photo'];
					$id_user = $row['id_user'];
					$id_album = $row['id_album'];
					$img = $row['img'];
					$tn_img = $row['tn_img'];
					//on supprimme les photos du serveur
					unlink('./photos/'.$id_user.'/'.$id_album.'/'.$img);
					unlink('./photos/'.$id_user.'/'.$id_album.'/thumbs/'.$tn_img);
					//on supprime de la base
					$sql_supp_img = 'DELETE FROM photos_album WHERE id_photo = :id_photo';
					$stmt=$pdo->prepare($sql_supp_img);
					$nb = $stmt->execute(array(':id_photo'=>$id_photo));				
				}	
			}
			$id_album = $_POST['id_album'];
			$id_user = $_SESSION['id_user'];
			$nom_album = nom_album($_POST['id_album']);
			include ('zip.php');
			header('location:gerer_photos.php?id_album='.$id_album.'');	
		}


Fichier génération .zip

// nouvelle archive
$zip = new ZipArchive;

// ouverture
if ($zip->open('./zip/'.$nom_album.'.zip', ZipArchive::CREATE) === TRUE) {
   	//$folder = 'mon_dossier';
	$folder = './photos/'.$id_user.'/'.$id_album;
   	inputfolder: // "goto" apparu en php >= 5.3.0				
   // ouvre le dossier
   if ($handle = opendir($folder)) {
      // parcourt les entrées une par unes.
      while (FALSE !== ($entry = readdir($handle))) {
         // on exclu les dossiers parents (..) et courant (.),
         // ainsi que les fichiers dont on n’a pas les droits en lecture
         if ($entry != "." AND $entry != ".." AND $entry !=  "thumbs" AND is_readable($folder.'/'.$entry)) {				
            // si c’est un dossier, on reboucle avec le GOTO
            if (is_dir($folder.'/'.$entry)) {
               // ne surtout pas oublier ceci :)
               $folder =  $folder.'/'.$entry;
               goto inputfolder;
            }				
            // on ajoute le fichier (l’arborescence d’origine est conservée)
            //$zip->addFile($folder.'/'.$entry, $folder.'/'.$entry);
			$zip->addFile($folder.'/'.$entry, $entry);
         }
      }				
      // ferme le dossier
      closedir($handle);
   }				
   // ferme l’archive ZIP
   $zip->close();
			   
} 


Merci de votre aide


3 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour


Mais là problème j'ai toujours les photos supprimées.

Tu las as où ??

Dans la BDD ou dans le zip ??

0
delaville81 Messages postés 195 Date d'inscription   Statut Membre Dernière intervention  
 
Dans le .zip
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Par-ce qu'il faut supprimer le ZIP avant de le recréer.
0
delaville81 Messages postés 195 Date d'inscription   Statut Membre Dernière intervention  
 
Merci bien jordane45, je n'avais pas pensais à ça.
Maintenant ça fonctionne.
0