Jointure de 2 tables

Invité
Invité n'ayant pas de compte PHPfrance

19 janv. 2009, 17:51

bonjour,

j'aimerais selectionner 2 tables en meme temps a respecter l'ordre que le mot de passe et le pseudo soient valide et que cet utilisateur appartient au departement selectionne, une portion de code est comme suite:

formulaire:
pseudo
mot de passe
departement en <select>
tables:
departements:

id
departement

1, direction

2, administration

users:

id
id_departement
pseudo
mot de passe


1, 1, toto, photo
2, 2, tati, tatou
2, 1, tonton, tontan
alors quand l utilisateur veut se loguer, il doit choisir le departement, et cet utilisateur doit etre sous la liste des utilisateur de ce departement, comment faire ma requete sql afin d'arriver a ce resultat.

merci

Eléphant du PHP | 86 Messages

19 janv. 2009, 21:50

salut

Ta requête devrai être comme ça :

Code : Tout sélectionner

SELECT * FROM departements AS d, users AS u WHERE u.pseudo = 'le_pseudo' AND u.mot_de_passe = 'le mot de passe' AND d.departement = 'le_departement' AND u.id_departement = d.id
et tu contrôle le nombre de résultat si 1 c'est bon sinon c'est pas bon.

Voila...

x@v
Mammouth du PHP | 570 Messages

20 janv. 2009, 00:18

sous mon ordi le = ressemble au - ?
j'ai compris c'est une astuce de windows :)

Invité
Invité n'ayant pas de compte PHPfrance

20 janv. 2009, 18:25

salut

Ta requête devrai être comme ça :

Code : Tout sélectionner

SELECT * FROM departements AS d, users AS u WHERE u.pseudo = 'le_pseudo' AND u.mot_de_passe = 'le mot de passe' AND d.departement = 'le_departement' AND u.id_departement = d.id
et tu contrôle le nombre de résultat si 1 c'est bon sinon c'est pas bon.

Voila...
quand je change d utilisateur meme si il n appartient pas au departement ca logue, alors meme si j ai mis cela. ca logue toujours:
$select_users = "SELECT * FROM users, departements WHERE username='$username' AND passwd=AES_ENCRYPT('". $passwd. "', '". $cle ."') AND departements.id = 1";
un echo donne:

Code : Tout sélectionner

SELECT * FROM users, departements WHERE username='Admin' AND passwd=AES_ENCRYPT('123', 'AzErTy') AND departements.id = 1