Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/02/2006, 14h36   #1
Wu
Invité de passage
 
Inscription : février 2006
Messages : 37
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 37
Points : 2
Points : 2
Par défaut Question sur les sessions ?

Bonjour à tous,

Voila J'ai créer un espace perso sur mon site web.
Pour accéder à cette espace perso l'internaute doit rentrer un login et un mot de passe sur une page que j'ai appelé (auth.php). Ce login et ce mot sont ensuite vérifier dans un script situé sur une autre page appelé (verif.php). J'enregistre sur cette meme page (verif.php) dans deux variables de sessions le login et le mot de passe.
Sur cette meme page (verif.php), l'internaute une fois enregistré et son authentification reussi il peut accéder à deux autres pages (lien hypertext), que son "mon profil" (profil de l'internaute) et "ma base" (base de l'internaute). Mon probleme est le suivant, une fois que l'internaute choisi d'aller sur la page 'mon profil', et qu'il décide de revenir ensuite sur la page verif.php pour accéder à la page "la base". L'internaute n'est plu reconnu.
Une fois que j'ai selectionné la page "mon profit' et que je veut revenir ensuite sur 'verif.php' pour acceder a la page "ma base" il m'affiche un message que j'ai crée "Mot de passe invalide". Pourquoi ? Ais-je oublier quelque chose ? Ca doit etre une question toute bête mais je débute en php et avec les sessions

Merci d'avance.
Wu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2006, 14h40   #2
Membre expérimenté
 
Avatar de dj-julio
 
Inscription : décembre 2005
Messages : 742
Détails du profil
Informations personnelles :
Âge : 25
Localisation : France, Finistère (Bretagne)

Informations forums :
Inscription : décembre 2005
Messages : 742
Points : 576
Points : 576
montre nous ton codede verif.php
soit tu crées mal ta session soit tu la détruis :/
__________________
Mon Site/Cv.
dj-julio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2006, 14h42   #3
Membre confirmé
 
Avatar de Wormus
 
Inscription : septembre 2005
Messages : 259
Détails du profil
Informations forums :
Inscription : septembre 2005
Messages : 259
Points : 207
Points : 207
je trouve ton problème bizarre !!

Il devrait pas l'y avoir de problème normalement, tu peux revenir, repartir ou faire ce que tu veux, tant que tu détruit pas ta session ou que tu change la valeur de ta variable, il doit pas l'y avoir de souci
__________________
Bankaï !!
Wormus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2006, 14h54   #4
Wu
Invité de passage
 
Inscription : février 2006
Messages : 37
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 37
Points : 2
Points : 2
Code :
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<?php
// initialisation de la session
session_start() ;
 
// si on a reçu les données d'un formulaire :
if ( !empty( $_POST['pseudo'] ) && !empty( $_POST['motdepasse'] ) ) {
 
// on les récupère
$nom = $_POST['pseudo'] ;
$motdepasse = $_POST['motdepasse'] ;
 
// on teste si le mot de passe est valide :
if ( verification( $nom, $motdepasse ) ) {
 
// on sauvegarde donc son nom dans la session
$_SESSION['nom'] = $nom ;
$_SESSION['motdepasse']= $motdepasse;
$message = 'Vous êtes correctement identifié !
<tr>
<td width="18" class="milieugauche">&nbsp;</td>
<td width="746" class="milieu" id="textmilieuplan"><br>
<p class="milieu-texte"><strong><em>Menu d\'administration du site</em> :</strong></p>
 
 
 
<a href="mabase.php"> | Ma base</a>&nbsp;&nbsp;&nbsp;
<a href="monprofil.php">| Mon Profil</a>                         
</tr>
' ;
 
 
} else {
// sinon on avertit l'utilisateur :
$message = 'Mot de passe invalide !<br><br>' ;
$message .='<a href="sommaire.php3">| Retour</a>' ;
  }
} else {
// un des champs n'est pas rempli
$message = 'Le pseudo ou le mot de passe est vide !<br><br>' ;
$message .='<a href="sommaire.php3">| Retour</a>' ;
}
?>
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>#NOM_SITE_SPIP - Identification</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="designplan.css" rel="stylesheet" type="text/css">
<link href="typographie.css" rel="stylesheet" type="text/css">
</head>
 
<body>
<p>
 
<form method="post" action="verif.php">
 
(---html---)
 
<?php echo $message ?>
 
		<?php
 
		 function verification($nom,$motdepasse){
		  // Connexion SQL
		  $dbhote = 'localhost';
		  $dbuser = 'root';
		  $dbpass = '';
		  $dbbase = 'bocage_diocese';
		  $link = mysql_connect($dbhote,$dbuser,$dbpass);
		  mysql_select_db($dbbase,$link);
 
		  // Création de la requête SQL
		  $nom_sql = mysql_real_escape_string($nom) ;
		  $pass_sql = mysql_real_escape_string($motdepasse) ;
		  $sql ="SELECT * FROM tb_users " 
				. " WHERE user_name='$nom_sql' AND password='$pass_sql'" ;
 
		  // Exécution de la requête SQL
		  $result = mysql_query($sql,$link);
		  if(mysql_num_rows($result)>0){
			return TRUE;
		  }else{
		  return FALSE;
		  }
		 }
		?> 
 
 
	 (--html--)
 
 
</form>
</p>
</body>
</html>
Wu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2006, 14h57   #5
Membre expérimenté
 
Avatar de dj-julio
 
Inscription : décembre 2005
Messages : 742
Détails du profil
Informations personnelles :
Âge : 25
Localisation : France, Finistère (Bretagne)

Informations forums :
Inscription : décembre 2005
Messages : 742
Points : 576
Points : 576
je pense que ça ne fonctionne pas correctement car la 1ere chose que tu fais sur cette page est de vérifier si tu as reçu les donné du form

à ta place je ferrais :

si il a une session
{
on ne fait rien
}

si il n'y a pas de session
{
on recupere les $_POST (si ils existent)
}
__________________
Mon Site/Cv.
dj-julio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2006, 15h22   #6
Wu
Invité de passage
 
Inscription : février 2006
Messages : 37
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 37
Points : 2
Points : 2
Code :
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
<?php
// initialisation de la session
session_start() ;
 
if ( (isset ($_SESSION['nom'])) || (isset ($_SESSION['motdepasse'])) ) {
}
 
else { 
 
// on les récupère
$nom = $_POST['pseudo'] ;
$motdepasse = $_POST['motdepasse'] ;
 
// on teste si le mot de passe est valide :
if ( verification( $nom, $motdepasse ) ) {
 
// on sauvegarde donc son nom dans la session
$_SESSION['nom'] = $nom ;
$_SESSION['motdepasse']= $motdepasse;
$message = 'Vous êtes correctement identifié !
<tr>
<td width="18" class="milieugauche">&nbsp;</td>
<td width="746" class="milieu" id="textmilieuplan"><br>
<p class="milieu-texte"><strong><em>Menu d\'administration du site</em> :</strong></p>
 
<a href="choix_secteur.php"> | Créer une page de présentation d\' une communauté</a><br><br>
 
<a href="choix_secteur2.html"> | Modifier le tableau des horaires des messes</a>&nbsp;&nbsp;&nbsp;<a href="form_sup_messe.php"> | Supprimer une messe</a><br><br>
<a href="choix_sec_ag.html"> | Modifier l\'agenda<br><br><br></a>
<a href="menu_base.html">| Ajout/Suppression d\'une communaut&eacute; ou d\'une messe <br><br><br></a> 
<a href="sommaire.php3">| Retour</a>                         
</tr>
' ;
} 
else {
// sinon on avertit l'utilisateur :
$message = 'Mot de passe invalide !<br><br>' ;
$message .='<a href="sommaire.php3">| Retour</a>' ;
}
}
?>
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>#NOM_SITE_SPIP - Identification</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="designplan.css" rel="stylesheet" type="text/css">
<link href="typographie.css" rel="stylesheet" type="text/css">
</head>
 
<body>
<p>
 
          (-- j'ai enlever les lignes html --)
 
<form method="post" action="verif.php">
 
<?php echo $message ?>
 
		<?php
 
		 function verification($nom,$motdepasse){
		  // Connexion SQL
		  $dbhote = 'localhost';
		  $dbuser = 'root';
		  $dbpass = '';
		  $dbbase = 'mabase';
		  $link = mysql_connect($dbhote,$dbuser,$dbpass);
		  mysql_select_db($dbbase,$link);
 
		  // Création de la requête SQL
		  $nom_sql = mysql_real_escape_string($nom) ;
		  $pass_sql = mysql_real_escape_string($motdepasse) ;
		  $sql ="SELECT * FROM tb_users " 
				. " WHERE user_name='$nom_sql' AND password='$pass_sql'" ;
 
		  // Exécution de la requête SQL
		  $result = mysql_query($sql,$link);
		  if(mysql_num_rows($result)>0){
			return TRUE;
		  }else{
		  return FALSE;
		  }
		 }
		?> 
 
 
	 (-- j'ai enlever les lignes html --)
 
 
</form>
</p>
</body>
</html>
Maintenant il m'affiche : Undefined variable: message
Wu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2006, 15h26   #7
Membre expérimenté
 
Avatar de dj-julio
 
Inscription : décembre 2005
Messages : 742
Détails du profil
Informations personnelles :
Âge : 25
Localisation : France, Finistère (Bretagne)

Informations forums :
Inscription : décembre 2005
Messages : 742
Points : 576
Points : 576
il te manque une cote a $ message = ' vous etes ....
__________________
Mon Site/Cv.
dj-julio est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2006, 15h32   #8
Wu
Invité de passage
 
Inscription : février 2006
Messages : 37
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 37
Points : 2
Points : 2
Désolé, mais je crois que Ma cote est présente :

Code :
$message = 'Mot de passe invalide !<br><br>' ;
Wu est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h51.


 
 
 
 
Partenaires

Hébergement Web