Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
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 19/03/2007, 13h27   #1
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 124
Points : 39
Points : 39
Par défaut Re-soumission de formulaire

Bonjour,
Je galère toujours avec un même problème en ce qui concerne un formulaire d'authentification. J'utilise la méthode décrite sur developpez.com (Utiliser une base de données pour sécuriser vos sessions), j'ai arrêté de m'embourber avec un script que j'avais tout seul. Seulement, je rencontre le même problème : quand je me déconnecte, si je clique sur le bouton précédent pour remonter à la page qui a envoyé les login et mot de passe dans des variables $_POST, le navigateur recréé les variables. Je dis recréé car j'efface les $_POST et $_SESSION.
Dans une précédente discussion, on m'a dit que le navigateur allait recréer les variables (même si je les efface avant). On m'a conseillé de mettre no-cache en en-tête mais c'est inefficace. La session est détruite, les variables de session effacées ainsi que le cookie de session.
Si quelqu'un a une idée, je ne sais pas quoi faire.
Merci d'avance.

PS : Si je n'ai pas été clair, n'hésitez pas à me demander d'autres explications.
bressan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 13h36   #2
Membre habitué
 
Homme
Inscription : octobre 2006
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : octobre 2006
Messages : 124
Points : 100
Points : 100
Comment fais-tu pour te déconnecter ? l'utilisateur doit cliquer sur un lien ?

Si c'est le cas, la solution que j'utilise et qui fonctionne, c'est de faire session_unregistrer('nomVariable') sur les variables de ta session qui permettent l'identification

pour l'exemple, voici comment je procéde et si l'utilisateur se déconnecte de façon "propre" (en cliquant sur le lien déconnexion), il ne peut plus revenir sur des pages sécurisées qu'il a consulté avant sans s'identifier de nouveau.

Formulaire d'identification :
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
<?
  session_start();
  session_unregister('ID');
  session_unregister('LOGIN');
?>
 
<table width="250">
<form name="identification" method="post" action="php_login.php">
  <tr class="title">
    <td class="center" colspan="2">Identification</td>
  </tr>
  <tr>
    <td class="right">Identifiant :</td>
    <td><input class="text" name="login" type="text" size="10" maxlength="10" /></td>
  </tr>
  <tr>
    <td class="right">Mot de passe :</td>
    <td><input class="text" name="password" type="password" size="10" /></td>
  </tr>
  <tr>
    <td class="center" colspan="2"><input class="button" type="submit" value="S'identifier" /></td>
  </tr>
<?
  if(isset($_SESSION['message']) && strlen($_SESSION['message']) != 0) {
    echo '<tr>' .
         '<td class="center" colspan="2"><p class="errormessage">' . $_SESSION['message'] . '</p></td>' .
         '</tr>';
    $_SESSION['message'] = '';
  }
?>
</form>
</table>
Script d'identification :
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
<?
  session_start();
  include_once('include/php/database.php');
 
// Récupération des données du formulaire
  $login = trim($_POST['login']);        // login utilisateur (10 caractères AN)
  $password = trim($_POST['password']);  // mot de passe de l'utilisateur (n caractères AN)
 
// Vérification des données
  $message = '';                         // Initialisation du message retour
  $error = false;
  if(!ereg('^[A-Za-z0-9]{6,10}$', $login)) {
    $message = 'Identifiant/Mot de passe incorrect<br />';
    $error = true;
  }
  if(strlen($password) == 0) {
    $message = 'Identifiant/Mot de passe incorrect<br />';
    $error = true;
  }
  if(!$error) {
    $link = db_connect();
    $query = "select * from user where us_password = '" . sha1($password) . "' and us_login='$login'";
    $result = db_query($query, $link);
    if(db_num_rows($result) != 1) {
      $message = 'Identifiant/Mot de passe incorrect<br />';
      $error = true;
    } else {
      $line = db_fetch_array($result);
      $_SESSION['ID'] = $line['us_id'];
      $_SESSION['LOGIN'] = $line['us_login'];
    }
    db_close($link);
  }
  $_SESSION['message'] = $message;
  if($error) {
    header('Location: index.php');
  } else {
    header('Location: page.php?page=1');
  }
?>
Script de déconnexion :
Code :
1
2
3
4
5
6
<?
  session_start();
  session_unregister('ID');
  session_unregister('LOGIN');
  header('Location: index.php');
?>
bigben99 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 13h51   #3
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 124
Points : 39
Points : 39
En fait, les login/pwd ne sont pas enregistrés dans des variables de session.
L'id session est stocké dans la base associé à l'utilisateur connecté et il y a une vérification à chaque page.
La logique est la suivante :
Vérification de l'existence d'une entrée dans la base avec le numéro de session en cours.
Si oui, on réactualise l'entrée avec un nouveau numéro de session (session_regenerate_id ()) et on affiche à l'écran un message du style : Bonjour, bressan avec un bouton de déconnexion.
Si non : s'il n'existe pas de $_POST, on affiche le formulaire. Si elles existent, on vérifie dans la base qu'elles sont correctes, on créé une entrée dans la base associant le login et l'id de session puis on affiche le même message avec le bouton de déconnexion.
Le problème vient donc bien des variables POST qui sont recréées par le navigateur lorsque l'on recharge la page (celle qui a envoyé le formulaire). Le script considère que les $_POST existent et sont correctes (ce qui est le cas) mais le problème est que si l'utilisateur qui fait précédent n'ai pas celui qui a les droits et bien c'est la m...
Il me faudrait donc un moyen pour éviter la "re-création des $_POST".
Voilà.
bressan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 13h53   #4
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 124
Points : 39
Points : 39
Tu as changé ton post j'avais pas vu ton code.
Je vais prendre le temps de lire ton code.
bressan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 14h12   #5
Membre habitué
 
Homme
Inscription : octobre 2006
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : octobre 2006
Messages : 124
Points : 100
Points : 100
Ok, je pense que ma solution ne te conviendra pas, car j'utilise uniquement les variables de session, je n'ai pas de table dans ma base pour gérer les connexions.

Par contre, en ce qui concerne tes variables login/pwd soumises par ton formulaire d'identification, elles sont persistantes ??? j'ai essayé de reproduire ton problème et pour moi les variables transimses par le formulaire n'existent que pour le script d'identification, ensuite, impossible de le retrouver dans une autre page, même en faisant précedent/suivant dans le navigateur.
bigben99 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 14h16   #6
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 124
Points : 39
Points : 39
J'ai lu ton script, et il me semble qu'il ait grosso modo identique au mien.
La logique est la même en tout cas.
Tu pourrais essayer de de connecter, de naviguer sur une ou deux pages et de faire précédent pour revenir à ta première page pour voir. Normalement, ton navigateur va recharger tes $_POST et te donner une identification correcte.
Ou alors il y a vraiment quelque chose que je ne fais pas correctement.

Tu as répondu entre temps, j'efface mes $_POSt mais ils sont recréés. Je ne comprend pas pourquoi.
bressan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 14h23   #7
Membre habitué
 
Homme
Inscription : octobre 2006
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : octobre 2006
Messages : 124
Points : 100
Points : 100
C'est justement ce que j'ai fais et il ne m'a pas rechargé mes variables $_POST.

Le seul moyen que j'ai trouvé pour ne pas avoir à resaisir mes identifiants, c'est de supprimer mes variables de session (ce qui revient à ne plus effectuer de contrôle).

Je pense que ton problème ne provient pas des variables $_POST mais plutôt du contrôle que tu fais. Comment constates-tu dans ta base que l'utilisateur s'est déconnecté ?
bigben99 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 14h46   #8
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 124
Points : 39
Points : 39
L'utilisateur est déconnecté si l'identifiant de la session courante n'est pas dans la base.
Une fois l'identification de l'utilisateur réussie, je stocke dans la base l'identifiant de l'entrée de la table utilisateur dans une table session associé à l'id de la session. Par exemple : id_session="e32r...213", id_user=3.
Quand l'utilisateur se déconnecte, cette entrée est supprimée.
Mais lorsque je fais précédent, le sript voit qu'il n'y a pas d'entrée dans la base associée avec l'id de session mais croit que les $_POST ont été envoyées et créé une entrée dans la base (id_session="458a...213", id_user=3) et reconnecte l'utilisateur. Si pour le navigateur, les $_POST n'étaient pas envoyées il afficherait le formulaire.
Je fais des tests un peut n'importe comment et plus rien ne marche. Je résouds ça et je le mets en ligne pour que tu puisses faire un test de toi même. Si tu veux je t'afficherais mon code.
Ad'tal
bressan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 14h59   #9
Membre habitué
 
Homme
Inscription : octobre 2006
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : octobre 2006
Messages : 124
Points : 100
Points : 100
Lorsque l'utilisateur fait "précédent" où le script récupére-t-il l'id utilisateur ? par $_POST['id_user'] ?
bigben99 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 15h00   #10
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 124
Points : 39
Points : 39
Bon, voici le lien pour voir grandeur nature : http://bressan.webou.net

Le code dans les pages est :
Code :
1
2
3
4
5
6
7
8
9
10
 
<?
session_start ();
 
$filename = "fichier.php";
if (file_exists ($filename)) require_once ($filename);
set_time_limit  (0);
 
$userdata = control (session_id ());
?>
Je place ensuite le html et j'utilise $userdata qui correspond à "Bonjour bressan Bouton:déconnexion".


Et celui de la page de vérification (qui correspond à celui décrit sur developpez.com) :
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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
 
<?
define ("LOGIN",			"user");
define ("PASS",				"pwd");
define ("SERVEUR",		      "server");
define ("BASE",				"db");
 
function connect($host = SERVEUR, $login = LOGIN, $pass = PASS, $base = BASE)
{
	$connection = @mysql_pconnect($host, $login, $pass) or die("Connection à ".$host." impossible\n");
	mysql_select_db($base, $connection) or die("Accès à la base ".$base." impossible\n");
	return $connection;
}
 
function openSession ($userid)
{
	$db = connect ();
 
	// On supprime la session en cours
	$requete0		= "DELETE FROM site_session WHERE userid ='".$userid."'";
	$resultat0	= @mysql_query					($requete0, $db);
 
	// Re-génération du sid
	session_regenerate_id ();
 
	// On insère le nouvel id de session dans la db
	$requete1		= "INSERT INTO site_session (sid, userid, ip, browser) VALUES ('".session_id ()."', '".$userid."', '".$_SERVER[REMOTE_ADDR]."', '".$_SERVER[HTTP_USER_AGENT]."')";
	//print ($requete1);
	$resultat1	= mysql_query					($requete1, $db);
 
	return TRUE;
}
 
function getLoginCheck ($username, $password)
{ 
	$username = addslashes(trim($username));
	$password = md5(addslashes(trim($password)));
 
	// Petite vérification pour éviter une requête sql
	if (empty ($username) && empty ($password))
		return FALSE;
	else
	{
		$db = connect ();
		$requete0		= "SELECT id FROM site_user WHERE username ='".$username."' AND password = '".$password."'";
		$resultat0	= mysql_query					($requete0, $db);
		$userdata		= mysql_fetch_array		($resultat0, MYSQL_ASSOC);
 
 
		if (!empty($userdata))
			$userdata = $userdata['id'];
		else
			$userdata = FALSE;
 
		return $userdata;
	}
}
 
 
function getUserInfo ()
{ 
	$db = connect ();
	$userdata0	= array ();
 
  $requete0		= "SELECT u.id, u.username FROM site_session s INNER JOIN site_user u ON s.sid ='".session_id()."' AND s.userid = u.id";
	$resultat0	= mysql_query					($requete0, $db);
  $userdata0	= mysql_fetch_array		($resultat0, MYSQL_ASSOC);	
 
	if (empty($userdata0))
		$userdata0 = FALSE;
 
	return $userdata0;
}
 
 
function getFormView ()
{	
	$view =		"<form action=\"menu.php\" method=\"post\">";
  $view .=	"	<table width=\"25%\" border=\"0\">";
  $view .=	"		<tr><td align=\"left\">Identifiant</td><td align=\"right\"><input type=\"text\" name=\"username\" size=\"20\"></td></tr>";
  $view .=	"		<tr><td align=\"left\">Mot de passe</td><td align=\"right\"><input type=\"password\" name=\"password\" size=\"20\"></td></tr>";
  $view .=	"		<tr><td width=\"100%\" colspan=\"2\">&nbsp</td></tr>";
  $view .=	"		<tr><td width=\"100%\" align=\"center\" colspan=\"2\"><input type=\"submit\" value=\"Valider\"></td></tr>";
  $view .=	"	</table>";
  $view .=	"</form>";
 
	echo $view;
}
 
 
function getMsg ($username)
{
	$view = "<center>Vous etes connecté en tant que <b>".$username." ";
	if (empty ($_POST ['closeSession']))
	{
		$view .= "<form action=\"menu.php\" method=\"post\">";
		$view .= "	<input type=\"hidden\" name=\"closeSession\" value=\"1\">";
		$view .= "<input type=\"submit\" value=\"Déconnexion\"></center><br />";
	}
	else
		closeSession ();
 
	return $view;
}
 
 
function dbClean ()
{
	$db = connect ();
 
	$limit = date('Y-m-d H-i-s', mktime(0, 0, 0, date('m'), date('d') - 2, date('Y')));
 
  $requete0		= "DELETE FROM site_session WHERE last_modified < ".$limit;
  $resultat0	= mysql_query					($requete0, $db);
}
 
 
function closeSession ()
{
	$db			= connect	();
 
  $requete0		= "DELETE FROM site_session WHERE sid ='".session_id ()."'";
  $resultat0	= mysql_query					($requete0, $db);
 
	unset							($_POST ['closeSession']);
	$_POST		=	array ();
	$_SESSION = array ();
	session_unset			();
  setcookie					(session_name (), '', time ()-42000, '/');
	session_destroy		();
	header						("Location:index.php");
	//echo '<meta http-equiv="Refresh" content="0;'.$_SERVER['PHP_SELF'].'">';
}
 
 
function control ()
{
	if (isset ($_POST ['closeSession']))
		closeSession ();
 
	if ($userdata = getUserinfo ())
  {
  	openSession	($userdata ['id']);
  	return getMsg			($userdata ['username']);
  }
  else
  {
  	//print ("<b>OK !!!</b>");
  	if (!$_POST)
  	{
  		getFormView ();	// Affiche le formulaire
  		exit;
  	}
		else
  	{
  		// Vérifie si le couple username/password est correct
  		if (!$loginCheck = getLoginCheck ($_POST ['username'], $_POST ['password']))
  		{
  			print ("Nom d'utilisateur et/ou mot de passe incorrect.<br />");
  			getFormView ();	// On réffiche le form
  			exit;
  		}
  		else
  		{
 
  			dbClean();	// On nettoie la db
 
  			// On initialise la session avec le userid récupérer
  			// par loginCheck
  			openSession ($loginCheck);
  			$userdata = getUserInfo ();
 
  			if (empty($userdata))
  				die ('erreur');
  				//control ();
 
  			return getMsg ($userdata ['username']);
  		}
  	}
  }
}
?>
Désolé, c'est pas très très lisible, je mets des tabulations partout pour tout aligner. Sur mon éditeur ça rend bien malgré tout.

Voilà.

Une idée ????
bressan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 15h02   #11
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 124
Points : 39
Points : 39
Login=test
Pwd=test

Sans ça va aller moins bien.
bressan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 15h08   #12
Membre habitué
 
Homme
Inscription : octobre 2006
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : octobre 2006
Messages : 124
Points : 100
Points : 100
Citation:
Envoyé par bressan

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
...
function control ()
{
	if (isset ($_POST ['closeSession']))
		closeSession ();
	
	if ($userdata = getUserinfo ())
  {
  	openSession	($userdata ['id']);
  	return getMsg			($userdata ['username']);
  }
  else
  {
  	//print ("<b>OK !!!</b>");
//  	if (!$_POST)
// essaies ca :
   if(isset($_POST['username'])
  	{
  		getFormView ();	// Affiche le formulaire
  		exit;
  	}
		else
  	{
  		// Vérifie si le couple username/password est correct
  		if (!$loginCheck = getLoginCheck ($_POST ['username'], $_POST ['password']))
  		{
  			print ("Nom d'utilisateur et/ou mot de passe incorrect.<br />");
  			getFormView ();	// On réffiche le form
  			exit;
  		}
  		else
  		{
  			
  			dbClean();	// On nettoie la db
  			
  			// On initialise la session avec le userid récupérer
  			// par loginCheck
  			openSession ($loginCheck);
  			$userdata = getUserInfo ();
  			
  			if (empty($userdata))
  				die ('erreur');
  				//control ();
  			
  			return getMsg ($userdata ['username']);
  		}
  	}
  }
}
?>
bigben99 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 15h16   #13
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 124
Points : 39
Points : 39
J'ai rajouté :
Code :
if (!isset ($_POST ['username']))
Avec ! sinon, j'affiche le formulaire si la variable est définie.
Le résultat est identique.
bressan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 15h26   #14
Membre habitué
 
Homme
Inscription : octobre 2006
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : octobre 2006
Messages : 124
Points : 100
Points : 100
J'ai été faire des tests sur ton site et j'ai constaté quelque chose de bizarre, lorsque je fais précédent, le formulaire d'identification est rempli... et je n'arrive pas à comprendre pourquoi car sur tous les autres sites ca n'est jamais le cas... Tu utilises les cookies ?

Sinon, une solution serait peut-être lors de la déconnexion de faire :
Code :
1
2
$_POST['username'] = '';
$POST['password'] = '';
bigben99 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 15h28   #15
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 124
Points : 39
Points : 39
J'ai une idée. Si je ne fais pas de session_regenrate-id (), l'id de session ne change pas lorsque l'on fais précédent. Je trouve ça d'ailleurs curieux dans la mesure ou je détruit ma session mes $_SESSION et le cookie de session mais bon !?!
Si j'ajoute un champ booleen dans ma table et que si l'id de session est dans la table mais avec un booleen à FALSE j'affiche le formulaire ça peut marcher peut être.
Je vais essayer en attend si une idée vient, je veux bien.

En tout cas, même si le problème persiste toujours, merci pour le temps consacré.
bressan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 15h29   #16
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 124
Points : 39
Points : 39
Décidément, on croise nos réponses, non j'utilise pas les cookies.

J'efface tout plusieurs fois lors de la déconnexion :

Code :
1
2
3
4
5
6
7
 
	unset		($_POST ['closeSession']);
	$_POST		=	array ();
	$_SESSION = array ();
	session_unset	();
        setcookie		(session_name (), '', time ()-42000, '/');
	session_destroy		();
bressan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 16h03   #17
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 124
Points : 39
Points : 39
C'est toujours pas bon, heureusement le moral ne baisse pas aussi vite que prévu.
On continue ...
bressan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 16h13   #18
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 124
Points : 39
Points : 39
J'ai bien vérifié si c'est un problème de cookie.
Je me connecte et je me déconnecte. J'efface les cookies du navigateurs et je fais précédent.
Et je suis reconnecté. Donc le soucis ne vient pas de là. Je pense qu'il vient bien du fait que les $_POST sont recréées.
Est il possible que le serveur garde une trace de tous les $_POST ou alors le navigateur ???
bressan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/03/2007, 16h38   #19
Nouveau Membre du Club
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 124
Points : 39
Points : 39
Je cherche des infos et sur http://matthieu.developpez.com/authentification/ il est marqué :

"Les champs de type password offrent une protection contre les yeux baladeurs par l'affichage d'astérisques à la place des caractères tapés, et leurs valeurs ne sont pas mises en cache par le navigateur."

Donc mon problème ne vient pas d'un stockage de variable du navigateur.
Donc est il possible que le serveur garde une trace de tous les $_POST ???
bressan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/03/2007, 10h18   #20
Membre habitué
 
Homme
Inscription : octobre 2006
Messages : 124
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : octobre 2006
Messages : 124
Points : 100
Points : 100
Je ne sais pas si tu as pu avancer sur ton problème, mais en effectuant de nouveaux tests ce matin, j'ai exactement le même comportement avec mon site... En fait, lorsque tu fais "précédent", tu n'es plus connecté, je pense que le navigateur t'affiche la page qu'il a en cache (le php n'est pas éxécuté de nouveau) car après avoir fait précédent, si je rafraichis la page, j'arrive sur le formulaire d'identification).
bigben99 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



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


 
 
 
 
Partenaires

Hébergement Web