Requète si le pseudo existe
Résolu
papyclic
Messages postés
446
Date d'inscription
Statut
Membre
Dernière intervention
-
papyclic Messages postés 446 Date d'inscription Statut Membre Dernière intervention -
papyclic Messages postés 446 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je suis en train de faire un formulaire de connexion.
Quatre conditions
1- si les champs sont vide
2- si le pseudo existe
3- si le membre à été banni
4- si le compte n'existe pas
Mon problème est que si un pseudo n'existe pas en BDD, je n'entre pas dans la condition 4 mais dans la condition 3, je ne comprends pas pourquoi??
Voici les requètes, merci pour votre aide
Je suis en train de faire un formulaire de connexion.
Quatre conditions
1- si les champs sont vide
2- si le pseudo existe
3- si le membre à été banni
4- si le compte n'existe pas
Mon problème est que si un pseudo n'existe pas en BDD, je n'entre pas dans la condition 4 mais dans la condition 3, je ne comprends pas pourquoi??
Voici les requètes, merci pour votre aide
private function ChampsVide() { return(empty($this->pseudo) || empty($this->passwd)) ? true : false; } private function PseudoExist() { $sql = "SELECT * FROM cdc_Personnes LEFT JOIN cdc_Adherer ON cdc_Personnes.idpers = cdc_Adherer.idpers WHERE pseudo = :pseudo AND now() BETWEEN ddebut AND dfin"; $requete = $this->bdd->prepare($sql); $requete->execute(array('pseudo' => $this->pseudo)); $donnees = $requete->fetch(); return ($donnees) ? $donnees['passwd'] : true; //si la requête retourne un résultat, on retourne le mot de passe sinon false } private function Banni() { $sql = "SELECT * FROM cdc_Personnes LEFT JOIN cdc_Adherer ON cdc_Personnes.idpers = cdc_Adherer.idpers WHERE pseudo = :pseudo AND now() BETWEEN ddebut AND dfin"; $requete = $this->bdd->prepare($sql); $requete->execute(array('pseudo' => $this->pseudo)); $donnees = $requete->fetch(); return($donnees) ? false : true; } private function Session() { $sql = "SELECT * FROM cdc_Personnes WHERE pseudo = :pseudo"; $requete = $this->bdd->prepare($sql); $requete->execute(array('pseudo' => $this->pseudo)); $donnees = $requete->fetch(); $_SESSION['idpers'] = $donnees['idpers']; $_SESSION['prenom'] = $donnees['prenom']; $_SESSION['pseudo'] = $this->pseudo; } public function VerifConnexion() { if($this->ChampsVide()) { $erreur = "Veuillez remplir tous les champs"; } else if($this->PseudoExist()) { echo '$this->PseudoExist() retourne true : On vérifie si il est banni...'; if($this->passwd == $this->PseudoExist()) { echo 'Appel de la fonction Banni()'; if(!$this->Banni()) { $erreur = "success"; $this->Session(); } else { $erreur = "Ton compte a été supprimé"; } } else { $erreur = "Mauvais mot de passe...ou Mauvais login...Merci de recommencer.</br> Peut-être n'êtes vous pas membre de la Clique ? Dans ce cas désolé..."; } } else { echo '$this->PseudoExist() retourne false : la fonction Banni() n\'est pas appelée'; $erreur = "Ce compte n'existe pas"; } return $erreur; }
A voir également:
- Requète si le pseudo existe
- Pseudo whatsapp - Accueil - Messagerie instantanée
- Pseudo facebook - Guide
- Un périphérique qui n'existe pas a été spécifié - Forum Disque dur / SSD
- Gmail.fr existe - Forum Gmail
- Ymail existe - Télécharger - Mail
7 réponses
Salut,
Ta fonction PseudoExist() retourne toujours une valeur correspondant à true converti en booléen : en effet ta fonction retourne soit le mot de passe (une chaine non vide) soit la valeur true.
Donc la condition else if($this->PseudoExist()) sera toujours validée (sauf si le mot de passe est une chaine vide).
La fonction PseudoExist() doit donc retourner false si l'utilisateur n'existe pas.
Bonne journée,
Ta fonction PseudoExist() retourne toujours une valeur correspondant à true converti en booléen : en effet ta fonction retourne soit le mot de passe (une chaine non vide) soit la valeur true.
Donc la condition else if($this->PseudoExist()) sera toujours validée (sauf si le mot de passe est une chaine vide).
La fonction PseudoExist() doit donc retourner false si l'utilisateur n'existe pas.
Bonne journée,
Bonjour
Merci encore de ton aide.
Maintenant si un pseudo qui existe pas je rentre bien dans la condition "ce compte n'existe pas" mais maintenant c'est la fonction Banni qui me fait défault??
Merci encore de ton aide.
Maintenant si un pseudo qui existe pas je rentre bien dans la condition "ce compte n'existe pas" mais maintenant c'est la fonction Banni qui me fait défault??
Quelques explications
Supposons qu'un adhérent adhére à notre association au 01/09/2015 je lui attribue des identifiants. Ensuite pour x raison il a démissionné le 02/02/2016
Avec ses identifiant il doit ne plus pouvoir se connecter, d'où la condition "Ton compte a été supprimpé"
Supposons qu'un adhérent adhére à notre association au 01/09/2015 je lui attribue des identifiants. Ensuite pour x raison il a démissionné le 02/02/2016
Avec ses identifiant il doit ne plus pouvoir se connecter, d'où la condition "Ton compte a été supprimpé"
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour
Et OUI tu as raison BINGO il faut aucune condition dans la fonction PseudoExist des semaines que je suis deçu MERCI je suis NUL c'est d'une logique en plus.
Maintenant ça fonctionne bien
MERCI
Et OUI tu as raison BINGO il faut aucune condition dans la fonction PseudoExist des semaines que je suis deçu MERCI je suis NUL c'est d'une logique en plus.
Maintenant ça fonctionne bien
MERCI