Salut,
pour commencer je pense que tu devrait regarder la fonction LIMIT de mysql pour ne selection que 16 tuples plutot que la base :)
ensuite tu peut faire ce que tu veut avec JS
je suppose que ta "grosse" image s'appelle grande (<img src="" name="grande" /> )
il faut que tu mette tes vignettes dans un lien
<a href="#" onclik="vignette(' ici tu met un element qui te permette de reconnaitre la vignette le champ vignette de la bdd par exemple');"><img src="vignette" /></a>
La focntion JS associer
<script language="javascript">
function vignette(lien) {
if (document.images) //permet de vérifier si le navigateur supporte cette méthode
{
//On définit le lien de la nouvelle image
src_img="lien vers ton image/" + lien;
//On change l'image grace a la méthode image document.images['grande"].src=src_img;
}
}
</script>
Pour faire mieux je te donne un exemple de code
<?php
//tu fait ta requete
?>
<img src="images/image_defaut.gif" />
<br>
<?php
//Affichage des vignette
echo '<table><tr>';
While ($data=mysql_fetch_object($req))
{
echo '<td><a href="#" onclik="vignette(',$data->vignette,');"><img src="./images/',$data->vignette,'" /></a></td>';
}
//Je te laisse gérer seule le multi colone (c'est dans les comment faire :) )
?>
<script laguage="javascript">
function vignette(lien) {
if (document.images) //permet de vérifier si le navigateur supporte cette méthode
{
//On définit le lien de la nouvelle image
src_img="./images/" + lien;
//On change l'image grace a la méthode image document.images['grande"].src=src_img;
}
}
</script>
Voila le code opérationnel :). J'ai considéré que que $req contient la ressource SQL résultat de la requete. Le répertoire images contient tes vignettes et le champ vignette est le lien vers les vignettes (le nom de l'image quoi !).
tu peut changer la <a href></a> en <button></button> ce qui serait a mon avis un peut mieux (un peu de CSS pour faire disparaitre le fond et le tour est joué
bonne lecture, bon esais