Besoin d'aide pour un select que je n'arrive pas à faire marcher.
J'ai 2 tables, une contenant entre autres le nom des membres (ibf_members), une autre contenant une liste de plantes (base), définies par certains critères, et en particulier si la fiche est visible ou non par les autres (champ 'valid' issu d'un checkbox, valeur 'on' ou vide).
Je cherche à faire un select permettant, si le membre regarde sa liste ou celle des autres, que celle ci n'affiche bien sûr que les fiches 'autorisées' (champ valid=on)
Seulement, ma requete ne semble pas prendre en compte ce champ.
Pouvez vous me dire ce qui coince ?
Merci de votre aide
La requête :
CODE
if($access_full=='ok'){ // si c'est la collec du membre
$sql="SELECT src_id_spec,members_display_name FROM base,ibf_members WHERE ibf_members.id=base.src_id_member AND src_id_member='".$membre."'";
}
else{ // sinon si c'est une autre collec
$sql="SELECT src_id_spec,members_display_name FROM base,ibf_members WHERE ibf_members.id=base.src_id_member AND src_id_member='".$membre."' AND valid='on'";
}
$sql="SELECT src_id_spec,members_display_name FROM base,ibf_members WHERE ibf_members.id=base.src_id_member AND src_id_member='".$membre."'";
}
else{ // sinon si c'est une autre collec
$sql="SELECT src_id_spec,members_display_name FROM base,ibf_members WHERE ibf_members.id=base.src_id_member AND src_id_member='".$membre."' AND valid='on'";
}
Dans ma base de test, un membre a 2 fiches, une avec valid=on, une autre avec valid vide.
La requête devrait donc retourner 2 enregistrements si c'est le membre qui consulte sa fiche, et 1 enregistrement si c'est un autre membre qui visite cette même fiche.
Là, dans les 2 cas, il est retourné les 2 enregistrements.
A toutes fins utiles, le champ 'valid' est défini en CHAR(3) dans la base.