Et bien utilise left join pour ajouter ta table roles
Bonjour,
Pouvez-vous m'aider car je n'arrive pas a faire une requête SQL qui marchequi lie les deux?
J'aimerai lier deux Tables "membres" qui est déja en place et "roles" qui comme champs (id, name, slug, level)
Je voudrai faire comme dans le tutoriel PHP : Gérer des Permissions mais sans passer par PDO.
Voila ma requete pour la table "membre".
$result = sqlquery("SELECT COUNT(membre_id) AS nbr, membre_id, membre_pseudo, membre_mdp FROM membres WHERE
membre_pseudo = '".mysql_real_escape_string($_POST'pseudo'])."' GROUP BY membre_id", 1);
Merci
7 réponses
comme ça?
$result = sqlquery("SELECT COUNT(membre_id) AS nbr, membre_id, membre_pseudo, membre_mdp, role_id, roles.name, roles.slug, roles.level FROM membres LEFT JOIN roles ON membres.role_id=roles.id WHERE
membre_pseudo = '".mysql_real_escape_string($_POST'pseudo'])."' GROUP BY membre_id", 1);
Je ne comprends pas bien la requête d'origine de mon premier message. j'ai jamais utilisé le left join.
merci pour m'avoir repondu :)
Oui c'est ça. Tu as essayé?
oui mais je récupère pas les champs de la tables "roles".
Je trouve ça (membres.role_id=roles.id) un peu bizarre, j'ai copier sur un tutoriel sans le comprendre vraiment.
Et avec ceci:
$result = sqlquery("
SELECT COUNT(m.membre_id) AS nbr, m.membre_id, m.membre_pseudo, m.membre_mdp, m.role_id, r.name, r.slug, r.level
FROM membres AS m
LEFT JOIN roles AS r ON m.role_id = r.id
WHERE m.membre_pseudo = '".mysql_real_escape_string($_POST'pseudo'])."'
GROUP BY m.membre_id
", 1);
Moi j'avais fait ça:
$result = sqlquery("SELECT COUNT(membre_id) AS nbr, membres.membre_id, membres.membre_pseudo, membres.membre_mdp, membres.role_id, roles.id, roles.name, roles.slug, roles.level FROM membres LEFT JOIN roles ON roles.id=membres.role_id WHERE
membre_pseudo = '".mysql_real_escape_string($_POST'pseudo'])."' GROUP BY membre_id", 1);//------------------------------------------------------------------------------------------------------------------TEST
Bon c'est super les deux codes marche nikel :)
Un grand merci!! djtec