Bonjour,
je suis entrain de réaliser la partie administration de mon site. Actuellement je dois lister les articles et afficher le titre + l'auteur.
J'ai vu que sur mysql on pouvais utiliser des left join fin de réaliser une jointure entre deux tables et donc très facilement récupérer le nom de l'auteur en partant de son ID.
Ma requête est très simple pour le moment
(```
SELECT * FROM articles
Structure table articles
![](http://i.imgur.com/2z7ylBb.png)
![](http://i.imgur.com/ejmnv2D.png)
Merci de votre aide
(EDIT: J'ai réussis avec
SELECT * FROM articles INNER JOIN users ON articles.posted_by = users.id
mais quand je met
SELECT * FROM articles WHERE id = ? AND slug = ? INNER JOIN users ON articles.posted_by = users.id
ça me retourne
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INNER JOIN users ON articles.posted_by = users.id' at line 1' in C:\xampp\htdocs\article.php:14 Stack trace: #0 C:\xampp\htdocs\article.php(14): PDOStatement->execute(Array) #1 {main} thrown in C:\xampp\htdocs\article.php on line 14
@bugland, merci de ta réponse c'est corriger. :)
J'ai juste un autre problème sur un left join
SELECT * FROM articles INNER JOIN users ON articles.posted_by = users.id
Il remplace l'id de l'article par l'id de l'auteur
Bonjour.
Il remplace l'id de l'article par l'id de l'auteur
Il ne remplace pas, il fait juste la jointure.
Une requête SELECT ne peut modifier aucune donnée en base de données.
@Lartak,
Bonjour, comment je pourrais "renomer" articles.id en id_article et users.id en id_users?
Car dans mon foreach si je met pas la jointure id = l'id de l'article, alors que si je met la jointure id = id de l'auteur
Merci
Pour renommer une colonne il suffit dans ton select de mettre SELECT articles.id AS Id_article par exemple devant le vrai nom