Generation de miniatures simples et rapides

Soyez le premier à donner votre avis sur cette source.

Snippet vu 12 130 fois - Téléchargée 27 fois

Contenu du snippet

Simplement mettre le fichier galerie.php dans un repertoire et ensuite le modifier pour changer le repertoire des imgs, la presentation et la taille des miniatures.

Source / Exemple :


<?
/*
          _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
         |                                                                   |
         |  Par gogoprog - gogoprog@skynet.be                                |
         |      Galerie Automatique sans MySQL simple et rapide              |
         |  basé sur le code de Neocide - neocide@nomade.fr                  |
         |   Totalement modifié par gogoprog :)				     |
         |   Jlai rendu beaucoup plus simple et rapide			     |
         |   Merci a Neocide pour la base :) 				     |
         |_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _|
          -------------------------------------------------------------------

  • /
function isImg ($file){if (eregi(".jpg$",$file)){return true;}} // Fonction de verification des fichiers jpeg $genererImg = "redimImg.php"; // Fichier php qui se charge de faire les reduction d'image $repImg = "sk8"; // Repertoire des images $handle = opendir("$repImg"); // On ouvre le repertoire des images while ($file = readdir($handle)) {if ($file != "." && $file != ".." && isImg ($file)) {$listImg[] = $file; // On place toutes les images du dossier dans le tableau $imgList sort($listImg);}} // On classe les fichiers dans l'orde alphabetique (c'est plus mieux ;D) ) closedir($handle); // On ferme le repertoire des images // presentation de la page echo " <body bgcolor=#000000> "; $lien = "galerie.php?"; // Liens pour afficher votre page if (empty($Galerie)) {$Galerie = 1;} $precGalerie = $Galerie-1; // Galerie precedente $suivGalerie = $Galerie+1; // Galerie suivante $nbImg = count($listImg); // Compte le nombre d'image $nbLigne = 4; // Nombre de ligne souhaité $nbCol = 5; // Nombre de colonne souhaité $nbImgParPg = $nbLigne*$nbCol; // Calcul du nombre d'image par page $nbGalerie = $nbImg/$nbImgParPg; // Calcul du nombre de galerie $nbGalerie = ceil("$nbGalerie"); // Calcul du nombre de galerie, arrondi superieur du calcul $numImg = ($Galerie*$nbImgParPg)-$nbImgParPg; // Compteur pour le tableau $imgList echo"<table border=0 cellspacing=5 cellpadding=3 width=100% align=center> <tr><td colspan=$nbCol><font size=25 face=Arial>$Galerie</font> <font size=5 face=Arial>$repImg</font></td></tr>"; $comptLigne = 0; // Mise a zero du compteur de lignes while ($comptLigne < $nbLigne) {echo "<tr>"; $comtpImg = 0; // Mise a zero du compteur d'images while ($comtpImg < $nbCol && $numImg < $nbImg) {echo "<td align=center><a target=blank href=\"$repImg/$listImg[$numImg]\"><img src=\"$repImg/$listImg[$numImg]\" border=0 width=150 height=150></a></td>"; //change la ligne ci-dessus pour la taille des miniatures $numImg++; // Incremantation du compteur de $imgList (each() et foreach() etait beaucoup moins pratique :D( ) $comtpImg++; // Incremantation du compteur d'images } echo "</tr>"; $comptLigne++; // Incremantation du compteur de lignes } echo "<tr><td colspan=$nbCol align=center><table width=100% border=0 cellspacing=0 cellpadding=0><tr align=center><td colspan=2>"; for ($compt = 1; $compt <= $nbGalerie && $nbGalerie > 1; $compt++) {echo"| <a href=\"$lien"."Galerie=$compt\">$compt</a> ";} if ($nbGalerie > 1){echo" | ";} echo "</td></tr><tr><td width=50% align=left>"; if ($Galerie > 1) {echo "<a href=\"$lien"."Galerie=$precGalerie\">Precedent</a> ";} // Lien "precedent" echo" </td><td width=50% align=right>"; if ($Galerie < $nbGalerie) {echo "<a href=\"$lien"."Galerie=$suivGalerie\">Suivant</a>";} // Lien "suivant" echo "</td></tr></table></td></tr></table></body></html>"; ?>

Conclusion :


Je me suis basé sur le code de Neocide mais jai modifié pas mal de chose.
Mon code est plus simple et plus rapide mais les miniatures sont strechées :)
Merci à lui quand meme pour la base :)

A voir également

Ajouter un commentaire

Commentaires

Messages postés
2
Date d'inscription
mardi 14 avril 2009
Statut
Membre
Dernière intervention
1 avril 2011

Bonsoir, j'ai le meme problème qie Metalgear, il faut modifié quoi dans le script svp ? je n'arrive pas a savoir sd'ou viens le beug !

Merci d'avance ;)
Messages postés
16
Date d'inscription
dimanche 13 juillet 2003
Statut
Membre
Dernière intervention
17 octobre 2007

pour tes liens suivant et précédent, si une image passe de l'$id 30 à $35, le lien passe par 31 32 33 34, c'est à rectifier ;)
Messages postés
36
Date d'inscription
samedi 22 mai 2004
Statut
Membre
Dernière intervention
17 février 2010

Salut ;-)
Tout d'abord je voudrais dire que cette source est superbe. Cependant j'ai un petit problème : Les pages ne changent pas, quand il y a beaucoup d'images, cela créé plusieurs galeries (jusque là ok) mais après lorsque je veux voir les autres images, je clic sur le lien galerie suivante en bas mais rien ne se passe ? les Images restent celles de la galerie un. Y aurait-il une explication à mon problème ?
Merci d'avance (je met quand même 10/10 parce que je sens que je suis le seul à avoir ce problème lol)
Messages postés
365
Date d'inscription
vendredi 24 mai 2002
Statut
Membre
Dernière intervention
18 octobre 2004

Intéressant mais ça ne crée pas de vraies miniatures (tout le fichier est qd mm envoyé au navigateur) et les images sont toutes redimentionnées à une même taille ce qui peut poser des pb de déformation si toutes n'ont pas le même rapport largeur/hauteur.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.