encore un LEFT JOIN

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : encore un LEFT JOIN

par graffx » 26 juil. 2009, 22:41

Heu en effet, j' avais sql. sur ma messagerie, merci de m' avoir guidé, je vais aller lire le tuto et étudier ta solution, je te tiens au courant, merci encore :)

par niuxe » 26 juil. 2009, 20:26

ceci :
requetemp  = mysql_query('SELECT  
mp_expediteur, mp_receveur, mp_titre,               
mp_time, mp_text, mp_lu, id, pseudo, avatar,
localisation, inscrit, post, signature
FROM mp
LEFT JOIN connexion ON pseudo = mp_expediteur
WHERE mp_id = "'.$id_mess.'"');
serait à remplacer par à peu près cela : ;)
$sql = "SELECT  m.mp_expediteur, m.mp_receveur, m.mp_titre, ";
$sql .= "m.mp_time, m.mp_text, m.mp_lu, ";
$sql .= "c.id, c.pseudo, c.avatar, c.localisation, c.inscrit, c.post, c.signature ";
$sql .= "FROM mp AS m LEFT JOIN connexion AS c ";
$sql .= "ON c.id_connexion = m.id_connexion WHERE m.mp_id = '".$id_mess."'";  // oO

$requetemp  = mysql_query($sql);
*code fait de tête

<<<EDIT
Hum, pourquoi LEFT JOIN ? Es tu sûr de faire le bon choix de jointures ?
EDIT;

++

par graffx » 26 juil. 2009, 19:30

mais fausse coment ca puisque j' ai utilisé le tuto du sdz sur leur messagerie, et ca, ca fonctionne :o :o


Dis moi juste ce qui te parait faux, parce que ma messagerie fonctionne en tout point comme il faut :cry:


edit: super interessant ton lien,, je vais tout lire de suite, je crosi que c' est un des plus complet que j' ai pu voir, merci

par niuxe » 26 juil. 2009, 19:11

Hello,
...
requetemp  = mysql_query('SELECT  
   mp_expediteur, mp_receveur, mp_titre,               
   mp_time, mp_text, mp_lu, id, pseudo, avatar,
   localisation, inscrit, post, signature
   FROM mp
   LEFT JOIN connexion ON pseudo = mp_expediteur
   WHERE mp_id = "'.$id_mess.'"');
...
Ta syntaxe est fausse, n'est il pas ? Pour comprendre comment se passe une jointure, je te préconise de lire entres autres, ceci.


++

encore un LEFT JOIN

par graffx » 26 juil. 2009, 18:33

salut a tous, je viens vous poser mon probleme car on ne repond jamais a mes messages sur le sdz.

Voila, j' ai une requete qui fonctionne tres bien pour ma messagerie :
   $requetemp  = mysql_query('SELECT  
   mp_expediteur, mp_receveur, mp_titre,               
   mp_time, mp_text, mp_lu, id, pseudo, avatar,
   localisation, inscrit, post, signature
   FROM mp
   LEFT JOIN connexion ON pseudo = mp_expediteur
   WHERE mp_id = "'.$id_mess.'"');

J' aimeria maintenant améliorer mes forums, et je vosu explique pourquoi.

Mes forums fonctionnent bien, mais il est basique (pseudo, date, titre, message).

J' aimerai donc combiner a nouveau deux tables, celle du forum et celle des membres pour que je puisse afficher plus d' infos par message (avatar, localisation, age, etc).


Le hic est que je me retrouve avec une erreur sql, je comprend pas pourquoi, ensuite j' ai pris exemple sur celle plus haut, pareil.

Deux tables: forum_general et connexion (celle des membres).

J' ai ceci pour seulement le forum et ca fonctionne:

$sql = 'SELECT pseudo,email,date_verif,texte,lect,titre FROM forum_general 
   WHERE id="'.mysql_escape_string($id).'"';

J' ai essayé ceci plus diverses tentatives foireuses, si vous pouviez m' aider parce que la je bute:


$sql = 'SELECT pseudo, email, date_verif, texte, lect, titre, id, pseudo, avatar,  localisation, inscrit, post, signature FROM forum_general 
LEFT JOIN connexion ON pseudo = pseudo_pseudo
   WHERE id="'.mysql_escape_string($id).'"';

A l' aide svp :(