galerie problème d'affichage
Bonjour,
j'ai suivis le how to "Un script de galerie photos (miniatures)" pour l'affichage d'une galerie. Comment faire pour que l'image en taille rélle s'affiche sous les miniatures (dans un cadre par exemple) et non pas dans une nouvelle page?
par avance, merci
le 10/08/2007 à 18:23
Bzh
Il faut utiliser du javascript !
Regarde les scripts dans des sites de javascript !
Avec du php, personne n'a une technique? (le php, je suis déjà pas fort mais alors, le javascript, j'y connais absolument rien...)
Le PHP sert à générer le contenu côté serveur. Le Javascript est généralement utilisé côté client. Or, tu souhaite rendre ton interface interactive, ce qui veut dire que ton interface va réagir indépendamment du serveur. Il faut donc utiliser le langage ad hoc, à savoir le Javascript dans ton cas.
Développeur récurrent, procédural et relationnel. Caustique soupe-au-lait.
le 12/08/2007 à 08:07
Keika
hmm perso je vois la solution en php.
Avec un simple if ca devrait le faire. Tu mets un:
<?php if(isset($_GET['image'])){
echo'<img src="ton_chemin/'.$_GET['image'].'" alt="img">' ;
}
Mets ce code juste dans la cellule en dessus de l'affichage des miniatures et ca devrait afficher ta grosse image quand dans ton lien tu as '&image=".
Enjoy
Le PHP --> C'est dur !
je suis un peu nul...Keila, le bout de code que tu m'as donné, je dois l'adapter comment dans ce code:
<?php
// on déclare un tableau qui contiendra le nom des fichiers de nos miniatures
$tableau = array();
// on ouvre notre dossier contenant les miniatures
$dossier = opendir ('./mini');
while ($fichier = readdir ($dossier)) {
if ($fichier != '.' && $fichier != '..' && $fichier != 'index.php?PageDemandee=11') {
// on stocke le nom des fichiers des miniatures dans un tableau
$tableau[] = $fichier;
}
}
closedir ($dossier);
// on défini le nombre de colonne sur lesquelles vont s'afficher nos miniatures
$nbcol=4;
// on compte le nombre de miniatures
$nbpics = count($tableau);
// si on a au moins une miniature, on les affiche toutes
if ($nbpics != 0) {
echo '<table>';
for ($i=0; $i<$nbpics; $i++){
if($i%$nbcol==0) echo '<tr>';
// pour chaque miniature, on affiche la miniature munie d'un lien vers la photo en taille réelle
echo '<td><a href="pics/' , $tableau[$i] , '"><img src="mini/' , $tableau[$i] , '" alt="Image" border=0/></a></td>';
if($i%$nbcol==($nbcol-1)) echo '</tr>';
}
echo '</table>';
}
// si on a aucune miniature, on affiche un petit message :)
else echo 'Aucune image à afficher';
?>
???
Quelqu'un aurait une piste pour afficher l'image taille normale dans la page avec le code que j'ai mis plus haut...je bloque
La piste est simple, keika te l'a expliqué :
- quand tu affiches la galerie, tu affiches des liens sur chaque miniature qui pointent sur la page courante, avec en plus un paramètre GET qui te permettra d'identifier sur quelle image tu as clické (le nom de l'image par exemple)
- Une fois la galerie affichée, tu check si tu as ce fameux paramètre en GET, et si il est la, ben tu affiches l'image qui correspond à ce GET (si l'image correspondant à ce GET existe bien)
Trop flou pour un débutant comme moi, merci quand-même d'avoir pris un peu de temps...
le 16/08/2007 à 10:41
Keika
hmm, trop flou pour un debutant, je comprends. Mais encore une fois, pourquoi tous les debutants sautent les etapes ?
fugazzi22, tu parles de gerer une galerie de miniatures et tu ne sais pas ce qu'est $_GET... commences par lire les cours, faire tes petits scripts perso et ca viendra tout seul.
Apres ca, $_GET te permet de recuperer des infos dans l'url:
www.site.com?page=accueil
dans ce cas $_GET['page'] sera egal a accueil. Donc si tu recuperes tes noms de fichiers il te faudra seulement jouer avec les chemins. Ce qui est vicieux comme truc. Ensuite pour la taille tu as filesize... regarde la doc
Le PHP --> C'est dur !