Bonjour à tous,

J'ai un formulaire dans une page index.php qui est transmi à une page membres.php pour identification. Lorsqu'il y a plusieurs échecs une redirection est effectué vers une page error.php.

Ma variable $_session['cpt_erreur']; qui compte le nbr d'erreurs n'est plus présente dans ma page index.php lorsque je tape directenement l'adresse dans la barre du navigateur. Je ne comprend pas pourquoi ??!

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
<?php //PAGE INDEX.PHP
if( is_dir( './tmp' ) ){
	session_save_path( './tmp' );
}
session_start();
 
if( isset( $_SESSION['cpt_erreur'] ) && $_SESSION['cpt_erreur'] > 4 ){
	$_SESSION['t_erreur'] = time();
	header( 'Location: error.php' );
	exit();
}
 
if( isset( $_SESSION['xnom'] )  ){
	$actif = 'disabled="disabled"';
}else{
	$actif = '';
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="robots" content="index, nofollow, noarchive">
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
<?php //PAGE MEMBRES.PHP
session_start();
 
//initialisation compteur essais loggin
if( !isset( $_SESSION['cpt_erreur'] ) ){
	$_SESSION['cpt_erreur'] = 0;
	$_SESSION['t_erreur'] = NULL;
}
 
//vérification des données loggin & pass
if( isset( $_POST['nom'] ) && isset( $_POST['motpasse'] ) ){
	$nom =  htmlentities( $_POST['nom'], ENT_QUOTES );
	$pass = htmlentities( $_POST['motpasse'], ENT_QUOTES );
 
	include( 'verif_loggin.php' );
 
	if( verif_loggin( $nom, $pass ) ){
		session_regenerate_id();
		$_SESSION['xnom'] = $nom;
	}else{
		$message = 'loggin ou passe incorrecte';
		$_SESSION['cpt_erreur']++;
 
		if( $_SESSION['cpt_erreur'] > 4 ){
			$_SESSION['t_erreur'] = time();
			header( 'Location: error.php' );
			exit();
		}
	}
}
 
if( isset( $_SESSION['xnom'] ) ){
	$actif = 'disabled="disabled"';
}else{
	$actif = NULL;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">