Bonjour,
Je fais mes premières armes en PHP et je me suis fixé l'objectif de créer une application toute bête qui permet à un utilisateur
de remplir un tableau qui répertorie les films favoris par titre et réalisateur dudit utilisateur (pas de quoi rêver mais bon !)
Je rencontre un problème au niveau de la connexion pour accéder à l'espace membre où j'ai crée une requête qui doit récupérer
le mot de passe de l'utilisateur en fonction de son pseudo(formulaire), puis le comparer au mot de passe stocké dans la base.
Or le code suivant ne fonctionne pas. Ligne 16, resultat['pass'] (qui devrait contenir le mot de passe de la base)
est non défini et je ne comprends pas pourquoi.
J'ai extrait chaque module qui traite la connexion de mon MVC sur ce code
Merci pour votre coup de pouce !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 <?php //________________________________MODEL___________________________________ $sql = 'SELECT id, pass, pseudo FROM membres WHERE pseudo = :pseudo'; $pdostatement = $this->_db->prepare($sql); $pdostatement->bindValue(':pseudo', $_POST['pseudoConnex'], PDO::PARAM_STR); $pdostatement->execute(); $resultat = $pdoStatement->fetch(); return $resultat //_______________________________INDEX______________________________________ case 'connex' : if(!empty($_POST['pseudoConnex']) && !empty($_POST['passConnex'])) { $passTest = password_verify($_POST['passConnex'], $resultat['pass']);//$resultat['pass'] non définie if ($passTest) { session_start(); $_SESSION['pseudo'] = $resultat['pseudo']; echo 'salut '.$_SESSION['pseudo'].' ! '; } } else { echo 'Mauvais identifiant ou mot de passe !'; //____________________________CONTROLLER____________________________________ function connexion() { $membre = new Membre();//Instance de classe "Membre" $manager = new Manager_Membre();//Instance de la classe du manager "Manager_Membre" $resultat = $manager->getMember($membre); } //_____________________FORMULAIRE DE CONNEXION_______________________________ ?> <form method="POST" action="../index.php?action=connex"> <p> <label for="pseudoConnex">Pseudo :</label> <input type="text" name="pseudoConnex" id="pseudoConnex"> </p> <p> <label for="passConnex">Mot de passe :</label> <input type="password" name="passConnex" id="passConnex"> </p> <input type="submit" value="Envoyer"/> </form>
Au plaisir de vous lire
Olivier
Partager