SQL Requete de jointure

Bonjour,

alors voila mon probleme je vais essayer d'etre le plus claire possible
je creer un site internet ou il y a une table membre
CREATE TABLE `membre` (
`idmembre ` INT( 6 ) NOT NULL AUTO_INCREMENT ,
`nom` VARCHAR( 25 ) NOT NULL ,
`prenom` VARCHAR( 25 ) NOT NULL ,
`motpasse` VARCHAR( 30 ) NOT NULL ,
`nomusage` VARCHAR( 30 ) NOT NULL ,
`telephone` INT( 10 ) NOT NULL ,
`email` VARCHAR( 50 ) NOT NULL ,
PRIMARY KEY ( `idmembre ` )
) TYPE=INNODB;

et une table article
CREATE TABLE `articles` (
`idarticle ` INT( 6 ) NOT NULL AUTO_INCREMENT ,
`nombrearticle` INT( 6 ) NOT NULL ,
`codearticle` INT( 25 ) NOT NULL ,
`titre` VARCHAR( 30 ) NOT NULL ,
`text_article` text NOT NULL ,
`auteur ` VARCHAR( 25 ) NOT NULL ,

PRIMARY KEY ( `idarticle ` )
) TYPE=INNODB;
jusque la rien de special

pour relier ces table je creer une table intermediaire

qui est

CREATE TABLE `consulte_article` (

`idmembre` INT( 6 ) NOT NULL ,
`idarticle` INT( 6 ) NOT NULL ,
PRIMARY KEY ( `idmembre` , `idarticle` ) ,

INDEX ( `idmembre` ) ,
FOREIGN KEY ( `idmembre` ) REFERENCES `membre` ( `idmembre` ) ,
INDEX ( `idarticle` ) ,
FOREIGN KEY ( `idarticle` ) REFERENCES `articles` ( `idarticle` )
) TYPE = InnoDB

le but de cette table et de savoir quelmembre a consulter quel article et grace a l'id membre on peut recuperer le speudo etc
mais je n'arrive pas a creer la requete me permetant par exemple
de savoir le mot de passe du membre qui a consulter l'article deux

select `v.motpasse`,

from membre as v,
`consulte_article` as m

where `v.idmembre`=`m.idmembre` and
`m.idetat=2`

une requete dans ce style la mais cela ne marche pas j'utilise easy php avec mysql
Configuration: Windows XP
Internet Explorer 6.0

6 réponses

  1. thx cela marche merci bocoup sly-bzh
    0
    1. Et si tu essaye avec autre chose que le mot de passe, genre le nom par exemple
      Ou alors essaye SELECT motpasse FROM...
      0
      1. nn regarde la declarations de mes tables sont au dessus c'est bien motpasse
        0
        1. ta table membre ne contient pas de champ motpasse, vérifie que tu n'ai pas fait de faute de frappe, c'est une erreur classique (genre motdepasse au lieu de motpasse)
          0
          1. SELECT `membre.motpasse`
            FROM `membre`, `consulte_article`, `articles`
            WHERE `membre.idmembre`=`consulte_article.id_membre` AND `consulte_article.idarticle`=`articles.idarticle`

            ca me dis Champ 'membre.motpasse' inconnu dans field list
            0
            1. Normalement ceci devrait marcher :
              SELECT membre.motpasse 
                  FROM membre, consult_article, articles 
                  WHERE membre.idmembre=consulte_article.id_membre AND consult_article.idarticle=articles.idarticle AND article.codearticle=2
              0