Créer un compteur sans base de donée

Eléphant du PHP | 89 Messages

16 août 2010, 18:24

Bonjour
Je suis entrain de créer un petit script qui permet de compter le nombre fois que l'utilisateur s'authentifie.
J'ai fait en sorte qu'il soit obliger de se loguer 2X, avec les mêmes identifiants, si c'est bon je doit normalement réussir à afficher: le login et le mdp sont les mêmes.
J'utilise les sessions pour y parvenir.
Voici le code:
$_SESSION['c'] = '';
if(isSet($_POST['Name']) AND !empty($_POST['Name']) AND isSet($_POST['Password']) 
    AND !empty($_POST['Password'])){
        
$_POST['Name'];//= $_SESSION['Name']
$_POST['Password']; //= $_SESSION['Password'] 

$_SESSION['a']=$_POST['Name'];
$_SESSION['b']=$_POST['Password'];
//echo $_SESSION['a'].'</br>';
//echo $_SESSION['b'].'</br>';
$_SESSION['c']++;

echo $_SESSION['c'];    
}
elseif($_SESSION['c'] == 2){ // si la deuxième soumission est égale à 2
    $_SESSION['d']=$_POST['Name'];
    $_SESSION['e']=$_POST['Password'];
     if($_SESSION['a']==$_SESSION['d'] AND $_SESSION['b']==$_SESSION['e']){
        echo 'le login et le mdp sont les mêmes';
     }
     else{
        echo 'Faux';
     }
}
Mais ca m'affiche 1 à chaque fois que je me logue.
La session $_SESSION['c'] ne garde pas la valeur précédente.
Est ce que vous avez une piste svp?
Cordialement

ViPHP
xTG
ViPHP | 7331 Messages

16 août 2010, 20:36

Regardes la première ligne de ton code...
Elle est exécutée à chaque chargement de la page.

PS : si c'est un entier l'initialisation correcte serait :
$_SESSION['ma_var'] = 0;

Petit nouveau ! | 4 Messages

17 août 2010, 10:36

essaie de passer ta décalaration de ta session "c" dans un if...
if(!isset($_SESSION['c]))
$_SESSION['c'] = 0;
Dans ce cas, seulement si ta session n'est pas déjà déclarée, elle sera initialisée à zéro, ca rejoins ce que te disais xTG... ;)