Bonjour à tous,
Je rencontre actuellement un problème...
Je dispose de deux tables :
Compétence : id_competence, image_active, image_inactive
Contact : id_contact, etc...
Concernant les images, l'image active affiche une icone noire correspondant à la compétence et l'image inactive est en fait la meme image mais grisée...
Un contact possede 1 a N compétences et une compétence peut avoir de 0 a n contacts !
Cela donne donc lieu à la création d'une 3eme table avec les clefs étrangères adéquates...
Cette table s'appelle Lien...
Ma requete sql permet de retrouver toutes les compétences que possede un contact, de ce point de vue pas de probleme.
J'affiche ensuite l'image active adéquate.
Le problème concerne la requete inverse, consistant à aller chercher les compétences qu'il n'a pas et ainsi d'afficher l'image inactive.
Je récupere l'identifiant du contact
$identifiant=$_GET['id'];
$res = mysql_query( 'SELECT id_competence FROM competence ORDER BY id_competence' );
while($data = mysql_fetch_assoc($res))
{
Ici la requete qui n'affiche que les compétences que possede le contact
$res2 = mysql_query( 'SELECT p.image_active as imagea, p.id_competence FROM lien l, contacts c, competence p WHERE l.id_contact = c.id_contact AND l.id_competence = p.id_competence AND p.id_competence="'.$data['id_competence'].'" AND c.id_contact="'.$identifiant.'"' );
$data1 = mysql_fetch_assoc($res2);
if($data1)
{
echo '<img src="'.$data1['imagea'].'"/>';
}
else
{
Et ici la requete affichée s'il n'a pas la compétence en question...
$res3 = mysql_query( 'SELECT p.image_inactive as imagen FROM lien l, contacts c, competence p WHERE l.id_contact = c.id_contact AND l.id_competence = p.id_competence AND p.id_competence<>"'.$data['id_competence'].'" AND c.id_contact="'.$identifiant.'"' );
$data2 = mysql_fetch_assoc($res3);
if($data2)
{
echo '<img src="'.$data2['imagen'].'"/>';
}
else
{
}
}
}
Voila, en piece jointe l'allure des résultats que j'obtiens...
J'ai bien les compétences en question en image noire mais la 2 eme requete censée faire le contraire me met toujours la meme image...
Cette requete doit être repensée mais comment ??
Je suis ouvert à toutes les critiques et éventuelles demandes d'info supplémentaires et surtout à une solution =)
Merci d'avance =)
Partager