SELECT d'un mot de passe dans une autre table
Résolu
Utilisateur anonyme
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
J'ai 2 tables dans une base SQL :
table 1 : association
champs :mail - password
table 2 : utilisateurs
champs : pseudo - association_id
J'essaie de mettre un place un système de connexion ou une association a un mot de passe identique pour tout ses membres.
Lors de la requête, je souhaite quelquechose du genre :
Vérifie que le pseudo corresponde au password.
Mes 2 tables sont liées avec une clé étrangère.
J'ai essayé ceci mais sans résultat :
J'obtiens erreur :
Array ( [0] => 42S22 [1] => 1054 [2] => Unknown column 'association.association_id' in 'on clause' ) 1
Des idées ?
Merci de votre aide
J'ai 2 tables dans une base SQL :
table 1 : association
champs :mail - password
table 2 : utilisateurs
champs : pseudo - association_id
J'essaie de mettre un place un système de connexion ou une association a un mot de passe identique pour tout ses membres.
Lors de la requête, je souhaite quelquechose du genre :
Vérifie que le pseudo corresponde au password.
Mes 2 tables sont liées avec une clé étrangère.
J'ai essayé ceci mais sans résultat :
$req = $bdd -> prepare("SELECT utilisateurs.pseudo, association.password FROM utilisateurs LEFT JOIN association ON association.association_id = utilisateurs.id WHERE pseudo = '$pseudo' AND password = '$password'");
J'obtiens erreur :
Array ( [0] => 42S22 [1] => 1054 [2] => Unknown column 'association.association_id' in 'on clause' ) 1
Des idées ?
Merci de votre aide
A voir également:
- SELECT d'un mot de passe dans une autre table
- Trousseau mot de passe iphone - Guide
- Mot de passe - Guide
- Mot de passe administrateur - Guide
- Mot de passe bios perdu - Guide
- Voir mot de passe wifi android - Guide
3 réponses
Bonjour,
Le moteur du sgbd indique que la colonne association.association_id n'existe pas. Ce qui semble exact au vu des 2 champs que tu donnes pour cette table.
Tu n'as pas donné quel est le sgbd que tu utilises. Mais peut être existe t-il sur chaque table un pseudo champ
La syntaxe serait alors du style :
cdlt
Un étranger, c'est un ami qu'on n'a pas encore rencontré.
Le moteur du sgbd indique que la colonne association.association_id n'existe pas. Ce qui semble exact au vu des 2 champs que tu donnes pour cette table.
Tu n'as pas donné quel est le sgbd que tu utilises. Mais peut être existe t-il sur chaque table un pseudo champ
id.
La syntaxe serait alors du style :
ON utilisateurs.association_id = association.id
cdlt
Un étranger, c'est un ami qu'on n'a pas encore rencontré.
Bien vu !
Merci :-)
En revanche pour la suite de ma connexion j'ai un souci au niveau du password.
Bien que les pseudos et passwords correspondent entre eux, je n'arrive pas à me connecter.
En revanche, lors de la connexion, lorsque j'enlève le :
AND $passwordTrouve==$password
la connexion se fait.
Bizarre...
Cela ne peut pas venir du LEFT JOIN ? Car lors d'une requête normal, la connexion se fait bien...
Merci :-)
En revanche pour la suite de ma connexion j'ai un souci au niveau du password.
// Requête sur la base de donnée $reponse = $bdd->query("SELECT * FROM utilisateurs LEFT JOIN association ON utilisateurs.association_id = association.id WHERE pseudo='".$pseudo."' AND password='".$password."';"); $resultat = $reponse->fetch(); $pseudoTrouve = $resultat['pseudo']; $passwordTrouve = $resultat['password']; echo 'pseudoTrouvé:'.$pseudoTrouve.' / passwordTrouvé:'.$passwordTrouve.'<br>'; // On compare le pseudo et MotDePasse if ($pseudoTrouve==$pseudo AND $passwordTrouve==$password) { session_start(); $_SESSION['pseudo'] = $pseudo; echo 'OK'; } else { echo 'Vos identifiants sont incorrects'; }
Bien que les pseudos et passwords correspondent entre eux, je n'arrive pas à me connecter.
En revanche, lors de la connexion, lorsque j'enlève le :
AND $passwordTrouve==$password
la connexion se fait.
Bizarre...
Cela ne peut pas venir du LEFT JOIN ? Car lors d'une requête normal, la connexion se fait bien...