Page 1 sur 1

[RESOLUT] Un lien qui affine une table selon catégorie

Posté : 17 févr. 2012, 20:59
par ikarytos
Bonsoir à tous,

Voilà, en :

1) J'ai un dossier unique ou se trouve toutes les images, et un autre les miniatures.

2) Toutes les images sont entrées dans une base de donnée, avec, id, nom, nb_util (nombre de fois choisie), et id_cat (qui correspond au type d'image (chat ou chien, etc)).

Actuellement un tableau affiche toutes les photos en même temps.

<?PHP
$calcul = "1";
$requete1 = "SELECT * FROM images";
$resultat = mysql_query($requete1);
$tableau = "<table border='1' align='center'><tr>";
while($reponse  = mysql_fetch_array($resultat)){
$tableau .= "<td align='center'><a href=\"images/".$reponse['nom']."\" target='_blank'><img src=\"miniatures/".$reponse['nom']."\" width='100' height='75' border='0' alt=\"".$reponse['nom']."\"></a>";
$tableau .= "<br><input type='radio' name='radiobutton' value=\"".$reponse['nom']."\"></td>";
$division = $calcul/6;
if ( is_int($division) ) {
$tableau .= "</tr><tr>";
}
$calcul = $calcul+1;
}
$tableau .= "</tr></table>";
echo($tableau);
?>


Mais je souhaiterais, mettre en place un menu, avec des liens qui au lieu d'aller sur une autre page, le lien affiche seulement la table avec les photos de la catégorie attribuée au lien, sur une zone précise comme sur une ancre.

J'ai la forme en tête, mais je n'arrive pas à la mettre en oeuvre. J'espère avoir tout de même été claire.

Je vous remercie d'avance.

Re: [PHP] Un lien qui affine une table selon catégorie

Posté : 17 févr. 2012, 21:08
par xTG
Il te suffit de transmettre dans l'url l'id de la catégorie et de modifier ta requête en conséquence.
A savoir rajouter une clause WHERE :
SELECT * FROM images where id_cat = ?

Re: [PHP] Un lien qui affine une table selon catégorie

Posté : 17 févr. 2012, 21:25
par ikarytos
Merci à toi xTG,

j'ai ajouter le WHERE
$requete1 = "SELECT * FROM images WHERE id_cat = ''";
se qui fonction en mettant manuellement le numéro de catégorie, mais comment faire pour qu'il se remplis en fonction du chois du lien?

et sans abuser j'espère :roll: comment former le lien??

Re: [PHP] Un lien qui affine une table selon catégorie

Posté : 17 févr. 2012, 21:43
par xTG
Soit un lien : maPage.php?id=1 (où 1 est un id de catégorie existant)
Donc sur la page résultante tu peux accéder à l'id avec $_GET['id'].
$sql = 'SELECT * FROM images WHERE id = ' . mysql_real_escape_string($_GET['id']);[/sql]

Au vue des questions que tu poses je te recommande de lire les articles de ce site pour améliorer ta compréhension du PHP :
http://phpdebutant.org/article118.php (tu as les autres chapitres sur le menu de droite)

Re: [PHP] Un lien qui affine une table selon catégorie

Posté : 17 févr. 2012, 23:03
par ikarytos
Un grand merci à toi :D Tout fonctionne comme je souhaitais.

J'ai juste modifier ton code, car j'avais toujours une erreur de syntaxe, sans savoir où. Et merci pour le site.

$re1 = mysql_real_escape_string($_GET['id']);
$requete1 = "SELECT * FROM images WHERE id_cat ='$re1'";
mysql_query($requete1) or die(mysql_error()."\n".$requete1);


Un lien qui affine une table selon catégorie

Posté : 21 févr. 2012, 19:49
par ikarytos
Re,

Bizarement sur tout allais bien, mais je viens de voir que sur un autre navigateur il y avais se message affiché:

Notice: Undefined index: id in C:\Program Files (x86)\EasyPHP-5.3.8.1\www\index.php3 on line 78

Ligne 78 et 79 = :
$cat = mysql_real_escape_string($_GET['id']);
$requete1 = "SELECT * FROM images WHERE id_cat ='$cat'";
A t'on la possibilité de mettre une condition, si l'id n'est pas encore choisi?

Merci