Bonjour à tou-te-s,
J'avais un site internet qui se faisait vieux, le code au fil des mises à jour était illisible... bref je me suis lancé dans la refonte totale de mon site, l'occasion de me mettre complétement à jour niveau html5 et PHP aussi tant qu'à faire.
Problème, je n'arrive pas à mettre en place mon espace membre.
Je voudrais avoir sur la page index un formulaire de connexion qui s'affiche si l'on n'est pas connecté et sinon une redirection vers l'espace membre, voici mon code :
En validant le questionnaire j'arrive sur une page intermédiaire de connexion qui connecte la personne et l'envoi à l'espace membre. Si le pseudo ou mot de passe manquant ou incorrect on redirige vers index.html en spécifiant la raison
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 <?php session_start(); if(isset($_SESSION['utilisateur'])){ header("Location: membre.php"); exit; } ?> <!DOCTYPE HTML> <html> <head> [...] </head> <body> [...] <form action="connexion.php" method="post"> <label for="pseudo">Pseudo</label> <input type="text" name="pseudo" value=""/> <br /> <label for="mdp">Mot de passe</label> <input type="password" name="mdp" value=""/> <br /> <input type="submit" value="Se connecter"/> </form> [...] </body> </html>
Mon problème est que rien ne se passe. La partie inscription va bien insérer un nouvel enregistrement dans la base de données mais si l'utilisateur veut se connecter il arrive sur connexion.php qui est une page blanche sans aucun code. Que le pseudo, mot de passe soient renseignés ou non qu'ils soient justes ou non même résultat...
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 <?php session_start(); include_once 'includes/config.php'; if (empty($_POST['pseudo'])){ header("Location: index.php?c=0"); exit; } if (empty($_POST['mdp'])){ header("Location: index.php?c=1"); exit; } if(isset($_POST['pseudo']) AND isset($_POST['mdp'])){ // On vérifie que le pseudo existe bien dans la base $y = $bdd->prepare('SELECT COUNT(*) FROM membres WHERE login = ?'); $y->execute(array($_POST['pseudo'])); $x = $y->fetch(); if ($x[0] == 0){ echo 'Ce pseudo n\'existe pas'; } else{ $e = $bdd->prepare('SELECT passwd FROM membres WHERE login = ?'); $e->execute(array($_POST['pseudo'])); $rep = $e->fetch(); $passe = sha1($_POST['mdp']); if ($passe == $rep['passwd']){ $_SESSION['utilisateur'] = $_POST['pseudo']; header("Location: membre.php"); exit; } else{ header("Location: index.php?c=2"); exit; } } } ?>
Merci par avance pour votre aide
Partager