Bonjour, étant en DUT informatique nous apprenons en se moment les sessions après quelques recherches sur internet cela ne me parraisait pas très sorcier mais j'ai du louper une étape.
J'ai un formulaire de connexion sur ma page index.php qui vérifie si l'utilisateur éxiste dans la base et est dirigé vers une autre page AccueilInterne.php mais une fois connecté si je relance mon site celui-ci est censé m'avoir gardé en mémoire et ben non !!
Je sais pas si j'ai été assez clair, n'hésitez pas à me posez des question
index.php
accueilInterne.php
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75 <?php session_start(); // Si la variable existe et qu'elle n'est pas vide if (isset($_SESSION['connecter']) && (!empty($_SESSION['connecter']))) header('Location: accueilInterne.php'); // lien venant de accueilInterne permettant de se déconnecté if ((isset($_GET['action'])) && ($_GET['action'] == 'logout')) { //destruction session session_destroy(); session_start(); header('Location: index.php'); } //initialisation variables $_SESSION['login'] = ''; $_SESSION['password'] = ''; $_SESSION['connecter'] = ''; // inclut les variables de connexion include_once("./mysql.php"); // test de connexion $connect = mysql_connect($host,$login,$mdp); if ( ! $connect ) die ("connection impossible"); //test de base de données $mabasededonnee=$db; mysql_select_db($mabasededonnee) or die ("Base de données inconnue"); if ((isset($_POST['login'])) && (isset($_POST['password']))){ $login = $_POST['login']; $password = $_POST['password']; if ((!empty($login)) && (!empty($password))){ $sql = 'select * from AUTH_utilisateurs where login='."'".$login."'".' and mdp='."'".$password."'" ; //echo $sql; $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); //$data = mysql_fetch_array($req); $existe = mysql_num_rows($req); //echo $existe; if ($existe == 0) { echo 'Identifiant inconnu !'; } else { $_SESSION['login'] = $login; $_SESSION['password'] = $password; $_SESSION['connecter'] = 'ok'; header('Location: accueilInterne.php'); } } else { echo 'Un des champs est vide'; } } ?> <html> <head> <title> Connexion </title> </head> <body> <h1> Authentification </h1> <form action="" method="post"> <p>Utilisateur : <input type="text" name="login" maxlength="30" size="30"></p> <p>Mot de passe : <input type="password" name="password" maxlength="30" size="30"></p> <p> <input type="submit" name="envoyer" value="Envoyer"> <input type="reset" name="annuler" value="Annuler"> </p> <p> <a href="./formulaireInscription.php"> Nouvel utilisateur </a> </p> </form> </body> </html>
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 <?php session_start(); ?> <html> <head> <title> Accueil </title> </head> <body> <h1> Bonjour, <?php if (!empty($_SESSION['login'])) echo $_SESSION['login'];?></h1> <p> Bienvenue sur mon site !!!</p> <p><a href="index.php?action=logout" title="Déconnexion">Se déconnecter</a></p> </body> </html>
Partager