protoinou | Bof j'ai pas envi de chercher d'où ça vient là , je te passe mon code j'espere que tu te retrouvera dedans . Le code:
Code :
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
- <head>
- <title>Galerie</title>
- <meta http-equiv="content-type" content="text/html; charset=ISO-8859-15" />
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
- <meta http-equiv="Content-Style-Type" content="text/css" />
- <meta http-equiv="Content-Language" content="fr" />
-
- <link rel="stylesheet" type="text/css" href="galerie.css" media="screen" title="galerie" />
- </head>
- <body>
- <form enctype="multipart/form-data" action="thumb.php" method="post">
- <input type="hidden" name="MAX_FILE_SIZE" value="600000" />
- Ma photo <input type="file" name="maphoto" />
- <input type="submit" />
- </form>
- <dl class="gallery">
- <dt><a href="soleil.jpg"><img src="<?= RatioResizeImg("soleil.jpg","200","100","" ); ?>" alt=""></a></dt>
- <dt>Ici le titre</dt>
- <dd>Ici la description</dd>
- </dl>
- <dl class="gallery">
- <dt><img src="<?= RatioResizeImg("soleil.jpg","200","100","" ); ?>" alt=""></dt>
- <dt>Ici le titre</dt>
- <dd>Ici la description</dd>
- </dl>
- <br/>
- <?
- // définition de l'espace destiné à recevoir les fichiers
- // si un fichier maphoto a bien été transféré
- if (is_uploaded_file($_FILES["maphoto"]["tmp_name"])) {
- // recupération de l'extension du fichier
- // autrement dit tout ce qu'il y a après le dernier point (inclus)
- $nomPhoto = $_FILES["maphoto"]["name"];
- $extension = substr($nomPhoto, strrpos($nomPhoto, "." ));
- // Contrôle de l'extension du fichier
- if (!preg_match ("/^(.*)\.(jpg|png|gif|jpeg)$/i", $nomPhoto ))
- {
- die("/!\fichier non autorisé/!\ seuls les extensions jpg,jpeg,png,gif sont autorisés" );
- }
- rename($_FILES["maphoto"]["tmp_name"], $nomPhoto);
- ?>
- <dl class="gallery">
- <dt><a href="<?=$nomPhoto?>"><img src="<?= RatioResizeImg($nomPhoto,"200","100","" ); ?>" alt=""></a></dt>
- <dt>Ici le titre</dt>
- <dd>Ici la description</dd>
- </dl>
- </body>
- </html>
- <?
- }
- function RatioResizeImg( $image, $newWidth, $newHeight, $path)
- {
- // chemin complet de l'image :
- $chemin = $path.$image;
- // détéction du type de l'image
- eregi("(...)$",$chemin,$regs);
- $type = strtolower($regs[1]);
- switch( $type )
- {
- case "gif": $srcImage = @imagecreatefromgif( $chemin ); break;
- case "jpg": $srcImage = @imagecreatefromjpeg( $chemin ); break;
- case "png": $srcImage = @imagecreatefrompng( $chemin ); break;
- default : unset( $type ); break;
- }
-
- if( $srcImage )
- {
- // hauteurs/largeurs
- $srcWidth = imagesx( $srcImage );
- $srcHeight = imagesy( $srcImage );
- $ratioWidth = $srcWidth/$newWidth;
- $ratioHeight = $srcHeight/$newHeight;
-
- // taille maximale dépassée ?
- if (($ratioWidth > 1) || ($ratioHeight > 1))
- {
- if( $ratioWidth < $ratioHeight)
- {
- $destWidth = $srcWidth/$ratioHeight;
- $destHeight = $newHeight;
- }
- else
- {
- $destWidth = $newWidth;
- $destHeight = $srcHeight/$ratioWidth;
- }
- }
- else
- {
- $destWidth = $srcWidth;
- $destHeight = $srcHeight;
- }
- // selon votre version de GD installée sur le serveur hébergeur,
- // utilisez la partie 1 ou 2 en retirant ou
- // rajoutant les caractères de commentaire "//"
-
- // Partie 1 : GD 2.0 ou supérieur, résultat très bons
- $destImage = imagecreatetruecolor( $destWidth, $destHeight);
- imagecopyresampled( $destImage, $srcImage, 0, 0, 0, 0, $destWidth,$destHeight,$srcWidth,$srcHeight );
- // Partie 2 : GD inférieur à 2, résultat très moyens
- //$destImage = imagecreate( $destWidth, $destHeight);
- //imagecopyresized( $destImage, $srcImage, 0, 0, 0, 0, $destWidth,$destHeight,$srcWidth,$srcHeight );
-
- if( !is_dir( $path."thumb" ) )
- {
- mkdir( $path."thumb", 0777 );
- }
- $dest_file = $path."thumb/".$image;
-
- // création et sauvegarde de l'image finale
- /* Ici on peut éditer le chemin de sauvegarde ($dest_file) */
- switch($type)
- {
- case "gif": @imagegif($destImage, $dest_file); break;
- case "jpg": @imagejpeg($destImage, $dest_file); break;
- case "png": @imagepng($destImage, $dest_file); break;
- }
-
- // libère la mémoire
- imagedestroy( $srcImage );
- imagedestroy( $destImage );
-
- // renvoit l'URL de l'image
- return $dest_file;
- }
- // erreur
- else
- {
- echo "Image inexistante ou aucun support ";
- if ($type)
- {
- echo "pour le format $type";
- }
- else
- {
- echo "pour ce format de fichier";
- }
- exit();
- }
- }
-
- ?>
|
je te file le CSS qui va bien:
galerie CSS:
Code :
- dl.gallery
- {
- border: 1px solid #000;
- background-color: #ddd;
- text-align: center;
- padding: 10px;
- float: left;
- margin-right: 1em;
- }
- .gallery dt { font-weight: bold; }
- .gallery dt img
- {
- border: 1px solid #000;
- }
- .gallery dd
- {
- margin: 0;
- padding: 0;
- }
|
Et le résultat http://asptt.basket.sn.free.fr/photo/galerie/thumb.php Message édité par protoinou le 13-05-2004 à 16:19:47
|