Problème diaporama PHP : erreur code ?

Résolu/Fermé
elnimeno Messages postés 3 Date d'inscription vendredi 30 juillet 2010 Statut Membre Dernière intervention 31 juillet 2010 - Modifié par elnimeno le 30/07/2010 à 11:00
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 31 juil. 2010 à 20:44
Bonjour,

J'ai téléchargé un script php pour avoir une visionneuse d'image sur mon site internet. Cependant, il y a un problème : c'est toujours la même photo qui s'affiche (la 1ere), même lorsque j'essaie de faire défiler ou que je clique sur une autre miniature.

D'avance merci pour l'aide que vous pourrez me fournir. Voici le code :

inséré en include dans ma page de photo :


<?php 
// PLF https://twitter.com/ceosammassey 
// JJS VISIONNEUSE 2005 
$dir = "photos/lutece/";    //Repertoire des images 
$page_nom="lutece.php";  //Nom de la page où se trouve la visionneuse 
$htim=400;       //hauteur maxi des images 
$lgim=540;       //largeur maxi des images 
$nbmin=7;      //nombre de miniatures // 0 si pas de miniatures 
$maxmin=90;      //largeur ou hauteur maxi des miniatures 
include('vision_jjs.php'); 
?>



fichier "principal" vision_jjs.php

<?php 

// PLF https://twitter.com/ceosammassey 
// JJS VISIONNEUSE 2005 

$nomfic= array(); 
$cpt2=0; 
// Ouvre le dossier $dir, et liste tous les fichiers 
if (is_dir($dir)) { 

   if ($dh = opendir($dir)) { 
       while (($file = readdir($dh)) !== false) { 
    if ($file != "." && $file != ".."){ 
    $info= pathinfo($file); 
    $info=$info['extension'];            
     if ($info == "gif" || $info == "jpg" || $info == "png" || $info == "swf" || $info == "psd" || $info == "bmp" || $info == "JPG"){ 
      
  $cpt2++;$nomfic[$cpt2]=$file; 
       }}} 
       closedir($dh); 
    sort($nomfic, SORT_STRING);//tri 
   } 
}//**************** 
if (empty($visref)) { //1er passage ***************************************** 
$cpt=$cpt2; 
$numero=0; 
$nummin=0; 

} 
else { //passages suivants ************************************************* 
$maref = explode("w",$visref);//nom des espaces :  
$cpt = $maref[0];  //nombre d'image     
$numero= $maref[1];  //image en cours  
$nummin= $maref[2];  //1ere miniature 

if ($numero >=  $cpt) $numero=0; 
if ($numero <0 ) $numero=$cpt-1; 
if ($nummin >=  $cpt) $nummin=0; 
if ($nummin >  $cpt-$nbmin) $nummin=$cpt-$nbmin; 
if ($nummin <0 ) $nummin=$cpt-$nbmin; 
}//*************************** 



   //*** PAGE *** 
    print '<table width="'.$lgim.'" border="0" align="center"><tr><td align="left">';  
     print '<a href="'.$page_nom.'?visref='.$cpt.'w'.($numero-1).'w'.($numero-1).'"> 
  <img src="flchg.gif" width="20" height="16" border="0"></a>';  
       print '</td><td align="right">'; 
  $byjjs='<br><div align="center"><font size="1" face="Verdana, sans-serif"> 
  <a href="https://twitter.com/ceosammassey" target="_blank">Je JavaScript</a></font><div>'; 
     print '<a href="'.$page_nom.'?visref='.$cpt.'w'.($numero+1).'w'.($numero+1).'"> 
  <img src="flchd.gif" width="20" height="16" border="0"></a>'; 
       print'</td></tr></table>'; 
    print '<table width="'.$lgim.'" border="0" align="center"><tr> 
        <td height="'.($htim+10).'" align="center" valign="top">';  
    
    $fic_lu=$dir.$nomfic[$numero];// réduction de l image et mise en page     
    $tail=getimagesize($fic_lu); 
    if ($tail[1]>$htim) {$tail[0]=round($tail[0]/($tail[1]/$htim));$tail[1]=$htim;} 
    if ($tail[0]>$lgim) {$tail[1]=round($tail[1]/($tail[0]/$lgim));$tail[0]=$lgim;} 
     
  print ' <img src="'.$fic_lu.'" width="'.$tail[0].'" height="'.$tail[1].'" name="image">'; 
    print '</td></tr></table>'; 
   if ($nbmin !=0) {//miniatures 
    print '<table width="'.$lgim.'" border="0" align="center"><tr>'; 
  $reculmin=$nummin-1; 
  if ($reculmin <0) $reculmin=0; 
  print '<td><a href="'.$page_nom.'?visref='.$cpt.'w'.($numero).'w'.$reculmin.'"> 
  <img src="flchg.gif" width="20" height="16" border="0"></a></td>';  

 for ($i=0; $i<$nbmin; $i++) { 
    print '<td height="'.($maxmin+10).'" align="center" valign="middle">'; 
    $fic_lu=$dir.$nomfic[$nummin+$i];// réduction de l image et mise en page     
    $tail=GetImageSize($fic_lu); 
    if ($tail[1]>$maxmin) {$tail[0]=round($tail[0]/($tail[1]/$maxmin));$tail[1]=$maxmin;} 
    if ($tail[0]>$maxmin) {$tail[1]=round($tail[1]/($tail[0]/$maxmin));$tail[0]=$maxmin;} 
     
  print '<a href="'.$page_nom.'?visref='.$cpt.'w'.($nummin+$i).'w'.($nummin+$i).'"><img src="'.$fic_lu.'" width="'.$tail[0].'" height="'.$tail[1].'" name="image"></a>';    
    print  '</td>'; 
 } 
  print '<td><a href="'.$page_nom.'?visref='.$cpt.'w'.($numero).'w'.($nummin+1).'"> 
  <img src="flchd.gif" width="20" height="16" border="0"></a></td>'; 
  print '</tr></table>';  
 } echo $byjjs; 


?>  




Nicolas

3 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
Modifié par Alain_42 le 31/07/2010 à 18:21
il faut récupérer la varaible postée en GET

voir commentaires

fichier "principal" vision_jjs.php 

<?php  

// PLF https://twitter.com/ceosammassey  
// JJS VISIONNEUSE 2005  

$nomfic= array();  
$cpt2=0;  
// Ouvre le dossier $dir, et liste tous les fichiers  
if (is_dir($dir)){  
   if ($dh = opendir($dir)) {  
       while (($file = readdir($dh)) !== false) {  
    if ($file != "." && $file != ".."){  
     $info= pathinfo($file);  
     $info=$info['extension'];             
     if ($info == "gif" || $info == "jpg" || $info == "png" || $info == "swf" || $info == "psd" || $info == "bmp" || $info == "JPG"){  
     $cpt2++; 
     $nomfic[$cpt2]=$file;  
    } 
   } 
   }  
       closedir($dh);  
    sort($nomfic, SORT_STRING);//tri  
   }  
}//****************  
///////  ligne ci dessous à rajouter 
if(isset($_GET['visref'])) $visref=$_GET['visref']; 
////////// 
if (empty($visref)) { //1er passage *****************************************  
 $cpt=$cpt2;  
 $numero=0;  
 $nummin=0;  

}else { //passages suivants *************************************************  
 $maref = explode("w",$visref);//nom des espaces :   
 $cpt = $maref[0];  //nombre d'image      
 $numero= $maref[1];  //image en cours   
 $nummin= $maref[2];  //1ere miniature  

 if ($numero >=  $cpt) $numero=0;  
 if ($numero <0 ) $numero=$cpt-1;  
 if ($nummin >=  $cpt) $nummin=0;  
 if ($nummin >  $cpt-$nbmin) $nummin=$cpt-$nbmin;  
 if ($nummin <0 ) $nummin=$cpt-$nbmin;  
}//***************************  



   //*** PAGE ***  
    print '<table width="'.$lgim.'" border="0" align="center"><tr><td align="left">';   
     print '<a href="'.$page_nom.'?visref='.$cpt.'w'.($numero-1).'w'.($numero-1).'">  
  <img src="flchg.gif" width="20" height="16" border="0"></a>';   
       print '</td><td align="right">';  
  $byjjs='<br><div align="center"><font size="1" face="Verdana, sans-serif">  
  <a href="https://twitter.com/ceosammassey" target="_blank">Je JavaScript</a></font><div>';  
     print '<a href="'.$page_nom.'?visref='.$cpt.'w'.($numero+1).'w'.($numero+1).'">  
  <img src="flchd.gif" width="20" height="16" border="0"></a>';  
       print'</td></tr></table>';  
    print '<table width="'.$lgim.'" border="0" align="center"><tr>  
        <td height="'.($htim+10).'" align="center" valign="top">';   
     
    $fic_lu=$dir.$nomfic[$numero];// réduction de l image et mise en page      
    $tail=getimagesize($fic_lu);  
    if ($tail[1]>$htim) {$tail[0]=round($tail[0]/($tail[1]/$htim));$tail[1]=$htim;}  
    if ($tail[0]>$lgim) {$tail[1]=round($tail[1]/($tail[0]/$lgim));$tail[0]=$lgim;}  
      
  print ' <img src="'.$fic_lu.'" width="'.$tail[0].'" height="'.$tail[1].'" name="image">';  
    print '</td></tr></table>';  
   if ($nbmin !=0) {//miniatures  
  print '<table width="'.$lgim.'" border="0" align="center"><tr>';  
  $reculmin=$nummin-1;  
  if ($reculmin <0) $reculmin=0;  
  print '<td><a href="'.$page_nom.'?visref='.$cpt.'w'.($numero).'w'.$reculmin.'">  
    <img src="flchg.gif" width="20" height="16" border="0"></a></td>';   

  for ($i=0; $i<$nbmin; $i++) {  
    print '<td height="'.($maxmin+10).'" align="center" valign="middle">';  
    $fic_lu=$dir.$nomfic[$nummin+$i];// réduction de l image et mise en page      
    $tail=GetImageSize($fic_lu);  
    if ($tail[1]>$maxmin) {$tail[0]=round($tail[0]/($tail[1]/$maxmin));$tail[1]=$maxmin;}  
    if ($tail[0]>$maxmin) {$tail[1]=round($tail[1]/($tail[0]/$maxmin));$tail[0]=$maxmin;}  
      
   print '<a href="'.$page_nom.'?visref='.$cpt.'w'.($nummin+$i).'w'.($nummin+$i).'"><img src="'.$fic_lu.'" width="'.$tail[0].'" height="'.$tail[1].'" name="image"></a>';     
   print  '</td>';  
  }  
   
 print '<td><a href="'.$page_nom.'?visref='.$cpt.'w'.($numero).'w'.($nummin+1).'">  
   <img src="flchd.gif" width="20" height="16" border="0"></a></td>';  
 print '</tr></table>';   
 }  
  
 echo $byjjs;  


?> 
1
elnimeno Messages postés 3 Date d'inscription vendredi 30 juillet 2010 Statut Membre Dernière intervention 31 juillet 2010
31 juil. 2010 à 20:00
Merci beaucoup Alain, ca marche !!!!!!!!!!!!!!!!!!!!!!!!!!!!

Bonne continuation !
0
elnimeno Messages postés 3 Date d'inscription vendredi 30 juillet 2010 Statut Membre Dernière intervention 31 juillet 2010
30 juil. 2010 à 22:56
Ca a pas l'air d'inspirer grand monde ;-)

Heeeeeeeeeeeeellllllllllllllllllllllllllppppppppppppp
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
31 juil. 2010 à 20:44
ok mets le sujet en résolu
0