Aide requete sql jointure

Fermé
torn33260 - 12 déc. 2010 à 16:26
Doctor C Messages postés 627 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 19 février 2016 - 13 déc. 2010 à 18:22
Bonjour,

voila j'ai une petite appli web en php (pour apprendre) qui utilise une table (user):

id | pseudo | mot de passe | email | pays | age
1 user1 gersjfty mail france 16
2 user2 gersjfty mail france 31
3 user3 gersjfty mail france 19
4 user4 gersjfty mail espagne 21

Ma requête pour le moment est
SELECT * FROM user WHERE pays = 'france' AND age >= '18' ORDER BY age DESC LIMIT 0, 3

Ceci servant a afficher pour un utilisateur les autre utilisateur majeur de france dans une limite de 3 personne. bref

j'ai rajouter une table (blocage) :

id | id1 | id2
1 1 2

Ca serez donc pour rajouter dans l'affichage, pour l'utilisateur user2 (id2) l'exclusion de l'utilisateur user1 car user1 l'a bloqué.

Pouvez vous m'aider? merci



1 réponse

Doctor C Messages postés 627 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 19 février 2016 398
Modifié par Doctor C le 13/12/2010 à 18:26
Je m'essaie!

$idUtilisateur = 1; //Exemple. On affiche les autres utilisateurs pour l'utilisateur ayant l'id 1 

$requete = "SELECT * FROM user  
WHERE id != '$idUtilisateur' AND pays = 'france' AND age >= '18' AND id NOT IN (SELECT id2 FROM blocage WHERE id1='$idUtilisateur')  
ORDER BY age DESC LIMIT 0, 3"; 


Bon, j'ai pas pu tester mais je crois que la logique est là!

Bonne chance!

Echo "Lima Mike Alfa";
0