[RESOLU] Gallerie image par des ARRAY

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Gallerie image par des ARRAY

Re: Gallerie image par des ARRAY

par el.badr » 09 avr. 2013, 14:32

Bonjour, Oui
j'ai deux dossiers différent images et miniature et je sais extraire la date mais bon allé je vous passe mon code =D


C'est la partie ou je veux créé un tableau contenant les images et les miniatures et aussi la date
elle est marqué par //Boucle sur le répertoire On extrait aussi le Nom de l'image et de la miniature
<?php
	// On créé d'abord des sous-dossier Thumbnails et Images en fonction de $_SESSION['username']
	$file_location = 'Images/'.$_SESSION['username'].'/';
	if (isset($_SESSION['username']) AND !file_exists($file_location) ) 
	{ mkdir('Images/'.$_SESSION['username']); mkdir('Thumbnails/'.$_SESSION['username']) ;}

	// Grace a ce systeme on peut afficher les images et leurs minatures 
	$dos_mini = './Thumbnails/'.$_SESSION['username'].'/';
	$dos_img  = './Images/'.$_SESSION['username'].'/';
	$Ressource = opendir($dos_mini);
	// on calcule combien d'image on a 
	$filecountjpg1 = count(glob($dos_mini . "*.jpg"));$filecountjpg2 = count(glob($dos_mini . "*.JPG")); $filecountjpg= $filecountjpg1+$filecountjpg2;
	$filecountpng1 = count(glob($dos_mini . "*.png"));$filecountpng2 = count(glob($dos_mini . "*.PNG")); $filecountpng= $filecountpng1+$filecountpng2;
	$nb_imgs = $filecountjpg+$filecountpng; 
	echo '<span class="txt_imgs"> '.$nb_imgs.' images</span><br/>';
	/* Pagination  des fichiers */
	

	//ici le nombre d'image à afficher par page
		$nb_imgs_par_page = 12;
		$moinsun=$nb_imgs_par_page-1;
		$url_page = $_SERVER['PHP_SELF'];
	//Numérotation de la page
		if(empty($_GET['page']))
			{
				$num_page = 1;
			}
		else{
				$num_page = (is_numeric($_GET['page'])?$_GET['page']:1);
			}
	//Ouverture du répertoire
		$ouverture = opendir($dos_mini);
		$compteur = 0;
	//début de la numérotation
		$debut = ($num_page - 1) * $nb_imgs_par_page;
	//Fin de la numérotation
		$fin = $debut + $moinsun;
	//Boucle sur le répertoire On extrait aussi le Nom de l'image et de la miniature 
		while (($Fichier = readdir($ouverture)) !== false) 
		{		$berk = array('.', '..');

				$dir_mini = $dos_mini.$Fichier;
				$dir_img  = $dos_img.$Fichier;
				$img_name = $dir_mini ; 
				$img_name = preg_replace('#jpg|png|jpg|mini|Thumbnails|/|\.#i', '',$img_name);
				
				
				if(!in_array($Fichier, $berk) && !is_dir($dir_mini))
				{
					
						
					
				}
			if($Fichier != '.' && $Fichier != '..' && $Fichier != $url_page) 
			{
				if ($compteur >= $debut && $compteur <= $fin ) 
				{
					if($compteur==$debut){}
					{
					?>
					
							<a href="<?php echo $dir_img ?>">		
							<img src="<?php echo $dir_mini ?>" title="<?php echo date ("d/F/Y H:i",filemtime($dir_mini)); ?>" alt="Img" /></a>
							
					<?php 
					}	
				}
				$compteur++;
			}
		}
		closedir($ouverture);
	
	// La recupération de la page à afficher 
	$files = glob('*.*');
	$nb_pages = ceil($nb_imgs/ $nb_imgs_par_page);
	
	if(!isset($_GET['page']))	$page = 1;
	
	elseif($_GET['page'])		$page = $_GET['page'];
	else $page = $nb_pages;
	$lien     = 'images.php?page=' ;
	$next     = $page+1;
	$previous = $page-1; 
	// Les liens de navigations
	echo '<br/>';
		if ($previous !=0) {echo '<a href="'.$lien.$previous.'"> Previous </a>';}									
	for($page=1; $page <= $nb_pages; $page++)		
		{ echo '<a href="'.$lien.$page.'" > '.$page.' </a>';}
	if ($next <= $nb_pages)	   {echo '<a href="'.$lien.$next.'"> Next </a>';}

?>

Re: Gallerie image par des ARRAY

par AB » 09 avr. 2013, 02:59

Pour récupérer la date tu peux utiliser filemtime ou sinon il y a des méthodes avec DirectoryIterator

Pour le reste il nous manque des informations pour distinguer $min_dir et $img_dir.

Sinon sur le principe c'est pas une bonne idée de mettre les images et les miniatures dans un même dossier. Faire deux dossiers avec un dossier "image" et un dossier "miniatures" possède de nombreux avantages.

Gallerie image par des ARRAY

par el.badr » 09 avr. 2013, 02:39

Bonjour tous, ^^

Je veux svp savoir comment extraire 3 informations ou plus d'un dossier donné et les mettres dans un array comme

$array['miniature'] = $min_dir

$array['image'] = $img_dir

$array['date'] = $date

et Trier le tableau $array en fonction de $array['date']

Enfin tout ça c'est pour mettre une galerie des images et la traiter en fonction de date ^^