problème de jointure

Discussion dans 'Débuter en référencement' créé par msi79, 20 Décembre 2012.

  1. msi79
    msi79 Nouveau WRInaute
    Inscrit:
    5 Février 2012
    Messages:
    4
    J'aime reçus:
    0
    salut je suis un tuto sur le net mais je bute sur une jointure de 3 tables . alors si quelqu'un pouvait m'aider .
    voici l erreur qui s'affiche :
    Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in C:\wamp\www\RESO_SOCIAL\functions\conversations.func.php on line 20.



    voici la structure de mes tables :

    conversations` (
    `id_conversation` int(10) NOT NULL AUTO_INCREMENT,
    `sujet_conversation` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
    PRIMARY KEY (`id_conversation`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=7 ;

    INSERT INTO `conversations` (`id_conversation`, `sujet_conversation`) VALUES
    (2, 'la joie'),
    (3, 'track')

    conversations_membres` (
    `id_conversation` int(10) NOT NULL AUTO_INCREMENT,
    `pseudo_dest` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
    PRIMARY KEY (`id_conversation`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=7 ;

    INSERT INTO `conversations_membres` (`id_conversation`, `pseudo_dest`) VALUES
    (2, 'isabelle'),
    (3, 'isabelle'),

    conversations_messages` (
    `id_conversation` int(10) NOT NULL AUTO_INCREMENT,
    `pseudo_exp` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
    `corps_message` text COLLATE utf8_unicode_ci NOT NULL,
    `date_message` datetime NOT NULL,
    PRIMARY KEY (`id_conversation`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=7 ;

    INSERT INTO `conversations_messages` (`id_conversation`, `pseudo_exp`, `corps_message`, `date_message`) VALUES
    (2, 'msi79', 'je veux te marier', '2012-12-19 21:29:32'),
    (3, 'msi79', 'je vais te tracker a mort bb', '2012-12-20 09:01:40'),


    utilisteurs` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `pseudo` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
    `password` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
    `email` varchar(100) COLLATE utf8_unicode_ci NOT NULL,
    `sexe` varchar(12) COLLATE utf8_unicode_ci NOT NULL,
    `situation` varchar(30) COLLATE utf8_unicode_ci NOT NULL,
    `apropos` text COLLATE utf8_unicode_ci NOT NULL,
    `avatar` varchar(150) COLLATE utf8_unicode_ci NOT NULL,
    PRIMARY KEY (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=4 ;


    INSERT INTO `utilisteurs` (`id`, `pseudo`, `password`, `email`, `sexe`, `situation`, `apropos`, `avatar`) VALUES
    (1, 'msi79', '0a689fa3811f3d605d82943c32cf17cdd764b291', '[email protected]', 'Homme', 'C�libataire', 'suis superrrrrrrrrrrrrrr', 'Photo_00058.jpg'),
    (2, 'isabelle', '4303f7fbc75763e3133bf7714fc90f02260848b5', '[email protected]', 'Homme', 'C�libataire', 'c mois la plus belle', '20121126_122254.jpg'),
    (3, 'sool', '0a689fa3811f3d605d82943c32cf17cdd764b291', '[email protected]', 'Homme', 'C�libataire', 'le plus puissant', 'jolie.jpg');

    et voici ma code php
    Code:
    <?php
      ////la function qui va recuperer les conversations
    function recup_conversation(){
    
    $results = array();
    $sql = mysql_query("
       SELECT 
          conversations.id_conversation,
    	  conversations.sujet_conversation,
    	  utilisteurs.pseudo,
    	  utilisteurs.avatar,
    	  conversations_messages.date_message
    	  
    	  FROM conversations 
    	  INNER JOIN conversations_messages ON conversations.id_conversation =  conversations_messages.id_conversation
    	  INNER JOIN utilisteurs ON utilisteurs.pseudo = conversations_messages.pseudo_exp
    	
    	  GROUP BY conversations.id_conversation
    	  ORDER BY conversations_messages.date_message
    ");
     while($row = mysql_fetch_assoc($sql)){
       $results[] = $row;
     }
     return $results;
    }
    ?> 
     
  2. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 207
    J'aime reçus:
    365
    C'est mysql_query() qui renvois false, affiche le mysql_error() et tu comprendras ce qui se passe.
     
  3. msi79
    msi79 Nouveau WRInaute
    Inscrit:
    5 Février 2012
    Messages:
    4
    J'aime reçus:
    0
    merci pour votre disponibilité .
    j'ai ajouté : or die(mysql_error())

    voici l'erreur qu'il m 'envoie :

    Not unique table/alias: 'conversations_messages'


    pouvez vous m 'aider a le corriger .
     
  4. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 207
    J'aime reçus:
    365
    Je pense que tu dois ajouter:
    Après cette ligne :
    conversations_messages.date_message

    Et avant le FROM, cette ligne :
    conversations_messages.pseudo_exp
     
  5. msi79
    msi79 Nouveau WRInaute
    Inscrit:
    5 Février 2012
    Messages:
    4
    J'aime reçus:
    0
    je viens de faire ça et j'avai deja fais ça mais toujours rien
    voici le code a nouveau

    Code:
    <?php
      ////la function qui va recuperer les conversations
    function recup_conversation(){
    
    $results = array();
    $sql = mysql_query("
     SELECT conversations.id_conversation,
    	  conversations.sujet_conversation,
    	  utilisteurs.pseudo,
    	  utilisteurs.avatar,
    	  conversations_messages.date_message,
    	  conversations_messages.pseudo_exp
    	  FROM conversations
    	  LEFT JOIN conversations_messages ON conversations.id_conversation = conversations_messages.id_conversation
    	  INNER JOIN conversations_messages ON conversations.id_conversation = conversations_messages.id_conversation
    	  INNER JOIN utilisteurs ON utilisteurs.pseudo = conversations_messages.pseudo_exp
    	  WHERE pseudo_dest = '{$_SESSION['pseudo']}'
    	  GROUP BY conversations.id_conversation
    	  ORDER BY conversations_messages.date_message
    ") or die(mysql_error());
     while($row = mysql_fetch_assoc($sql)){
       $results[] = $row;
     }
     return $results;
    }
    ?> 
     
  6. msi79
    msi79 Nouveau WRInaute
    Inscrit:
    5 Février 2012
    Messages:
    4
    J'aime reçus:
    0
    je viens de me rendre compte que je devrais mettre dans le clause WHERE pseudo_dest = '{$_SESSION['pseudo']}' au lieu de pseudo_exp = '{$_SESSION['pseudo']}'


    mais àa marche toujours pas .ça m'affiche
    Unknown column 'pseudo_dest' in 'where clause'
     
  7. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 207
    J'aime reçus:
    365
    Il manque le nom de la table devant, et ajouter ce 2° champ comme ce que je t'ai dis avant.
     
Chargement...
Similar Threads - problème jointure Forum Date
Problème en Les Jointure Développement d'un site Web ou d'une appli mobile 14 Mai 2014
Problème de jointure entre deux tables requête SQL Développement d'un site Web ou d'une appli mobile 11 Avril 2011
Jointure sql problème inner join Développement d'un site Web ou d'une appli mobile 4 Mai 2010
JOINTURE SQL: problème de doublon Développement d'un site Web ou d'une appli mobile 24 Mars 2009
Problème choix syntaxe jointure Développement d'un site Web ou d'une appli mobile 4 Août 2008
problème de jointure de table avec SUM et GROUP BY Développement d'un site Web ou d'une appli mobile 20 Septembre 2007
problème de jointure mysql : je m'en sors pas !! Développement d'un site Web ou d'une appli mobile 27 Août 2007
Probleme de jointures entre 3 tables Administration d'un site Web 30 Septembre 2004
Problème de duppication de la balise meta descritpion Débuter en référencement Hier à 17:11
Problème stats analytics Google Analytics Hier à 13:37
Problèmes Données structurées Crawl et indexation Google, sitemaps Dimanche à 09:07
problème avec mon site Demandes d'avis et de conseils sur vos sites 28 Novembre 2022
Probleme tag sur Google tag manager Demandes d'avis et de conseils sur vos sites 24 Novembre 2022
Probleme Tag sur Google Tag Manager Google Analytics 18 Novembre 2022
Gros problème sur la profondeur de mes pages Problèmes de référencement spécifiques à vos sites 30 Septembre 2022
Problème de htaccess chez Ionos URL Rewriting et .htaccess 12 Septembre 2022
Problème sur jquery avec fonction asynchrone Développement d'un site Web ou d'une appli mobile 6 Septembre 2022
Problème de crawl et d'indexation Crawl et indexation Google, sitemaps 1 Septembre 2022
WordPress Problème affichage style avec Elementor (titre, bordures, separateur) Administration d'un site Web 8 Août 2022
Problème d'indexation de backlinks Débuter en référencement 24 Juillet 2022