PHP merger 2 resultats de requetes SELECT

audrey -  
 audrey -
Bonjour,
sur mon site les internautes peuvent envoyer des messages. J'aimerais sur une page membre afficher tous les "interlocuteurs" du membre.
interlocuteur : personne qui vous a envoyé un message ou à qui vous avez envoyé un message
Dans ma tables "messages", il y a une colonne expediteur et une colonne destinataire :

$sqlinterlocuteurs1 = "SELECT destinataire FROM messages WHERE expediteur = '$pseudo'";
Là j'extrais tous ceux à qui j'ai envoyé un message.

$sqlinterlocuteurs2 = "SELECT expediteur FROM messages WHERE destinataire = '$pseudo'";
Là j'extrais tous ceux qui m'ont envoyé un message.

Comment assembler ces 2 requêtes SELECT (dans un tableau par exemple) pour ensuite dédoublonner le résultat ?

Exemple : j'ai pu envoyer un message à SARAH qui elle aussi m'a envoyé plusieurs messages.
Dans ma liste d'interlocuteur, j'aimerais qu'elle n'apparaisse qu'une seule fois.

Y aurait il une ame charitable pour m'aider svp ? Je lui en serais éternellement reconnaissante :)
merci d'avance
Configuration: Windows XP
Safari 530.5

8 réponses

  1. Darkito Messages postés 1191 Date d'inscription   Statut Membre Dernière intervention   545
     
    Bonjour,

    il est possible de faire ce que tu veux directement en SQL via une requête du type :
    
    SELECT DISTINCT
    CASE 
        WHEN expediteur = '$pseudo' THEN destinataire
        WHEN destinataire = '$pseudo' THEN expediteur
    END as interlocuteur
    FROM messages 
    WHERE expediteur = '$pseudo' OR destinataire = '$pseudo'
    
    
    2
  2. francis
     
    Salut,
    A mon avis tu ferai mieu de gérer les résultats de ces 2 requetes au lieu d'en faire une seule. D'ailleur je doute que conceptionnalement parlant, ce soit faisable d'en faire une seule....
    1
  3. audrey
     
    merci pour ta réponse francis. Mais du coup je ne sais pas par quel bout le prendre. Comment arriver à un résultat dédoublonné ?
    0
  4. francis
     
    Tu peux pas gérer les résultats via la programmation ?
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. audrey
     
    Comment ? Peut on par exemple définir les résultats d'une REQUETE1 dans un ARRAY et ajouter les résultats d'une REQUETE2 dans ce même ARRAY, à la suite ?
    0
  7. francis
     
    Ben par exemple, je sais pas ce que tu veux en faire mais bon en php, tout est possible sans se prendre la tete donc... ta juste a te trouver un façon "pratique"
    0
  8. audrey
     
    oui mais COMMENT ? Quel est le code ?
    0
  9. audrey
     
    Je viens de le tester en SQL, ce code marche parfaitement. Merci infiniment Darkito.

    Francis : il faut bien apprendre un jour...
    0