» Galerie photos
Rédigé par :
Guillaume
Le : 17/03/2003 à 20:30
Hits : 10490
Voici une galerie d'images / photos n'utilisant pas de base de donnée.
Une configuration simple, affiche directement les images contenues dans votre répertoire, possibilité d'afficher la liste complète et navigation facile.
article_2.php
<?php
// ------------------------------------------------------------------------- //
// Galerie photos //
// ------------------------------------------------------------------------- //
// Le 17/03/2003 à 20h30 par Guillaume JIGUEL (guillaume@gphp.net) //
// ------------------------------------------------------------------------- //
// http://www.gphp.net/articles,2.php //
// ------------------------------------------------------------------------- //
// Configuration
$dossier = "images/"; // Nom du dossier où il faut lister la galerie
$titre = "Galerie GPHP"; // Titre de la galerie
$width = array("200","800"); // Taille de l'image en largeur: réduite -> agrandie
$height = array("150","600"); // Taille de l'image en hauteur: réduite -> agrandie
// Ouverture du dossier
$ouverture = opendir($dossier);
while ($fichiers = readdir($ouverture)){
// On selectionne seulement les fichiers
if (is_file($dossier.$fichiers) && $fichiers != "/"){
// On stocke les résultats dans des array(), 1 pour la liste, l'autre pour l'affichage
$tab_liste[] = $compteur."/".$fichiers;
$tab[] = $dossier.$fichiers;
$compteur++;
}
}
// On affiche le titre
echo "<a style=\"font:bold 30px Arial\">$titre</a><br />";
// Si la requête commence par "liste", on affiche la liste
if( eregi('^liste', $_SERVER['QUERY_STRING'])) {
echo "<b><a href=\"galerie.php\">Masquer la Liste</a> :</b>\n";
echo "(".$compteur." images)<br />\n";
// On liste les fichiers
foreach ($tab_liste as $liste){
// On décompose la chaine et supprime les extentions
$liste = explode ("/", $liste);
$liste = str_replace(".gif","", $liste);
$liste = str_replace(".jpg","", $liste);
// On affiche le lien
echo "<a href=\"galerie.php?liste&img=$liste[0]\">".$liste[1]."</a><br>";
}
}else{
echo "<b><a href=\"?liste\">Liste des images</a> :</b>\n";
echo "(".$compteur." images)<br />\n";
}
// Définition de Precedente / Suivante
$max = $compteur-1;
$min = $compteur-$max;
if ($img >= 1 && $img <= $max){
if ($img==$min) $precedente = 0;
else $precedente = $img-1;
if ($img==$max) $suivante = 0;
else $suivante = $img+1;
}else{
$img = 0;
$precedente = $max;
$suivante = $img+1;
}
// Affichage de l'image + ouverture popup contenant l'image (taille à configurer)
echo "<br />";
echo "<a href=\"#\" onclick=\"window.open('".$tab[$img]."', 'Top', 'toolbar=0, location=0, directories=0, status=0, scrollbars=0, resizable=0, copyhistory=0, menuBar=0, width=$width[1], height=$height[1]')\">";
echo "<img src=\"".$tab[$img]."\" border=\"0\" width=\"$width[0]\" height=\"$height[0]\">";
echo "</a>";
echo "<br />";
// Si la liste est présente, on affiche les liens en conséquence
if( eregi('^liste', $_SERVER['QUERY_STRING'])) {
echo "<a href=\"galerie.php?liste&img=$precedente\">Précedente</a>";
echo " | ";
echo "<a href=\"galerie.php?liste&img=$suivante\">Suivante</a>";
}else{
echo "<a href=\"galerie.php?img=$precedente\">Précedente</a>";
echo " | ";
echo "<a href=\"galerie.php?img=$suivante\">Suivante</a>";
}
// Fermeture du dossier
closedir($ouverture);
?>
» Commentaires
Vous devez être connecté en tant que Membre pour pouvoir poster un commentaire, Inscrivez vous ici !
bonne continuation et j'espere te vois + longtemps la prochaine fois ;)