Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1753 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  probleme d'affichage d'image en php

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

probleme d'affichage d'image en php

n°1761038
pims901
Posté le 17-07-2008 à 18:48:54  profilanswer
 

bonjour
 
mon probleme est le suivant je veux afficher toutes les images d'un dossier
jai d'abord un script qui crée les miniatures des images du dossier et qui les place dans un nouveau dossier:
 
<?php  
 
//Les répertoires
$rep_imgs = "./luc";
$rep_mini = "./miniluc";
 
//Les dimensions max des miniatures
$width_mini = 300;
$height_mini = 300;
 
//La variable renvoyer à flash
$retour="<racine>";  
 
//On ouvre le dossier
$rep=opendir($rep_imgs);
 
//On parcours tous les fichiers  
while ($file = readdir($rep)){  
 
 //Si c'est un jpg
 if(substr($file,-3) == "jpg" OR substr($file,-3) =="JPG" ){  
 
  //On copie l'image
       $src_img = imagecreatefromjpeg("$rep_imgs/$file" );
 
  //Si la miniature n'existe pas
  if(!file_exists("$rep_mini/$file" )){
 
   //On cherhe la plus grande dimension
   if(imagesx($src_img) > imagesy($src_img)){
    //On calcul la proportion
    $proportion = $width_mini/imagesx($src_img);
 
    //Nouvelles dimensions
    $new_w = $width_mini;
    $new_h = imagesy($src_img)*$proportion;
   }else{
    //On calcul la proportion
    $proportion = $height_mini/imagesy($src_img);
 
    //Nouvelles dimensions
    $new_h = $height_mini;
    $new_w = imagesx($src_img)*$proportion;
   }
 
   //On crée la nouvelle image
   $dst_img = imagecreatetruecolor($new_w,$new_h);
   imagecopyresized($dst_img,$src_img,0,0,0,0,$new_w,$new_h,imagesx($src_img),imagesy($src_img));
 
   //On l'enregistre
   imagejpeg($dst_img,"$rep_mini/$file" );
  }
 
  //On rajoute un noeud xml avec le nom de l'image et ses dimensions
  $retour .= "<img name='$file' width='".imagesx($src_img)."' height='".imagesy($src_img)."' />";  
 }  
}
 
//On ferme le premier noeud
$retour .= "</racine>";  
 
//On ferme le dossier
closedir($rep);
 
 
?>
 
 
 
 
 
 
 
puis j'affiche les images du dossier miniatures avec le script suivant:
 
 
 
 
 
 
 
<?php
// url du fichier qui contient les images  
$urlphoto = "http://xxxxxxxxxxxxxx.fr/miniluc";  
 
// nom du répertoire qui contient les images  
$nomRepertoire = "miniluc";  
if (is_dir($nomRepertoire))
   {
   $dossier = opendir($nomRepertoire);
   while ($Fichier = readdir($dossier))  
       {  
      if ($Fichier != "." AND $Fichier != ".." AND (stristr($Fichier,'.gif') OR stristr($Fichier,'.jpg') OR stristr($Fichier,'.png') OR stristr($Fichier,'.bmp') OR stristr($Fichier,'.JPG')))  
        {  
        // Hauteur de toutes les images  
        $h_vign = "120";  
        $taille = getimagesize($nomRepertoire."/".$Fichier);  
        $reduc  = floor(($h_vign*100)/($taille[1]));  
        $l_vign = floor(($taille[0]*$reduc)/100);  
       
          echo '<a target="_blank" href="', $urlphoto, '/',$Fichier, '">';
          echo '<img src="', $urlphoto, '/',$Fichier, '" ';  
          echo "width='$l_vign' height='$h_vign'>";  
          echo "</a>&nbsp;";  
          }
        }    
   closedir($dossier);  
   }else{
   echo' Le répertoire spécifié n\'existe pas';
   }
?>  
 
 
probleme: lorsque le visiteur arrive sur la page et qu'il clique sur une image est s'affiche donc avec la qualité miniature...COMMENT DOIS-JE MODIFIER LE SCRIPT POUR QUE LORSQUE L' UTILISATEUR CLIQUE SUR UNE IMAGE CELA AFFICHE L'IMAGE DU PREMIER DOSSIER ??
 
merci d'avance
 

mood
Publicité
Posté le 17-07-2008 à 18:48:54  profilanswer
 

n°1761176
naceroth
Posté le 18-07-2008 à 00:12:38  profilanswer
 

Regarde ton $urlphoto dans ton deuxième script et les répertoires contenant les images dans le premier. Y a rien qui te vient à l'esprit ?

n°1761409
pims901
Posté le 18-07-2008 à 12:40:53  profilanswer
 

étant grand novice dans ce domaine, je réponderai que non. rien ne me veint a l'esprit..

n°1761514
Marty_McFl​y
Nan hé ho, d'accord?
Posté le 18-07-2008 à 14:12:57  profilanswer
 

$urlphoto = "http://xxxxxxxxxxxxxx.fr/miniluc";  
 
et
 
echo '<a target="_blank" href="', $urlphoto, '/',$Fichier, '">';  
 
=> c'est comme si tu avais
 
echo "<a target='_blank' href='http://xxxxxxxxxxxxxx.fr/miniluc/".$Fichier."'>";
 
le lien pointe donc vers le répertoire contenant les miniatures.
 
il te suffit donc d'ajouter un $urlphotogrand = "http://xxxxxxxxxxxxxx.fr/luc";
 
et plus loin...
 
echo "<a target='_blank' href='".$urlphotogrand."/".$Fichier."'>";
 
 

n°1761540
pims901
Posté le 18-07-2008 à 14:32:14  profilanswer
 

merci


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  probleme d'affichage d'image en php

 

Sujets relatifs
impossible de trouver le problème : affichage d'imageProblème étrange d'affichage d'image avec gotoAndStop
Probleme d'affichage d'image sur IEProbleme affichage image dans une applet
php->pdf->probleme affichage imageProblème include et affichage d'image
Probléme affichage image avec firefox sur smartblogprobleme affichage image
Probleme d'affichage d'image - code HTML tronqué en localproblème d'affichage d'image avec firefox
Plus de sujets relatifs à : probleme d'affichage d'image en php


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR