didygwatinik
Messages postés58Date d'inscriptiondimanche 26 octobre 2008StatutMembreDernière intervention15 décembre 2009
-
21 mars 2009 à 00:49
didygwatinik
Messages postés58Date d'inscriptiondimanche 26 octobre 2008StatutMembreDernière intervention15 décembre 2009
-
24 mars 2009 à 22:16
Bonjour,
Je suis actuellement en train de faire une messagerie. Dans ma boite de réception, j'ai des flèches qui permettent d'afficher par ordre croissant ou non les messages envoyés par un destinataire. On tri donc sur le login du destinataire. J'ai donc fait la requête suivante pour l'affichage par ordre décroissant: SELECT * FROM mail M, contact C WHERE M.senderMail = C.idContact AND senderMail=1 ORDER BY loginContact DESC LIMIT 0, 20;
Mais elle ne marche pas et c'est pareil pour l'ordre croissant avec ASC. Je ne comprends pas pourquoi sachant que j'en ai fais une du même type pour la date et elle marche parfaitement. Si quelqu'un pouvait m'aider, ça serait sympa. Voilà le schéma des tables concernées :
MAIL(idMail,#senderMail,#receiverMail,titleMail,messageMail,timestampMail)
CONTACT(idContact,nameContact,fnameContact,loginContact,passwordContact)
didygwatinik
Messages postés58Date d'inscriptiondimanche 26 octobre 2008StatutMembreDernière intervention15 décembre 2009 24 mars 2009 à 00:05
Le résultat n'est pas triée mais je n'obtiens pas d'erreur. J'ai 3 personnes qui m'envoient des mails dans ma boite Léo (2 mails), Nath (2 mails) et JM (1 mail). J'obtiens pour l'affichage croissant : JM, Léo, Nath, Nath, Léo.
C'est bizarre!!! Je ne vois pas où est l'erreur ma requête me parait correcte.
aieeeuuuuu
Messages postés698Date d'inscriptionjeudi 16 janvier 2003StatutMembreDernière intervention20 mai 20113 24 mars 2009 à 10:17
hmmm
est-ce que tu as fait un copier/coller de ta requête ici ?
car en la regardant de plus près, je ne vois pas comment tu peux obtenir plusieurs logins différents :
WHERE M.senderMail = C.idContact AND senderMail=1
tu fais une jointure sur l'ID de l'expéditeur, et tu filtre pour ID expéditeur = 1
donc je ne vois pas comment tu peux récupérer les contacts ayant un autre ID que 1...
didygwatinik
Messages postés58Date d'inscriptiondimanche 26 octobre 2008StatutMembreDernière intervention15 décembre 2009 24 mars 2009 à 22:03
En fait j'ai fait un echo de ma requête. Si je veux trié mes mails par le login qui sont dans la table contact la requête SELECT * FROM mail M, contact C WHERE M.senderMail = C.idContact AND senderMail=$idUser ORDER BY loginContact DESC LIMIT 0, 20; n'est pas valable?
Vous n’avez pas trouvé la réponse que vous recherchez ?
didygwatinik
Messages postés58Date d'inscriptiondimanche 26 octobre 2008StatutMembreDernière intervention15 décembre 2009 24 mars 2009 à 22:16
C'est bon finalement , j'ai fait un order by sur le senderMail et non pas sur le loginContact j'affiche ensuite le login. Merci pour ton aide aieeeuuuuu.