Créer "se souvenir de moi"

tomy2904 Messages postés 324 Date d'inscription   Statut Membre Dernière intervention   -  
 Gui -
Bonjour,

Voilà j'aimerais créer en dessous de mon login et de mon mot de passe de mon site, une checkbox "se souvenir de moi" afin que l'utilisateur ne doive pas remettre a chaque fois ses données. Est-ce que quelqu'un pourrait m'aider? Merci!

A voir également:

3 réponses

Fallentree Messages postés 2309 Date d'inscription   Statut Membre Dernière intervention   209
 
un cookies avec les informations codées avec une clef...
Mais je n ai pas de code a te proposer...
2
JooS Messages postés 2468 Date d'inscription   Statut Membre Dernière intervention   228
 
Salut ...

C'est avec les cookies que tu dois voir !!
Or, si l'utilisateur a cocher cette case, alors tu crée un cookie contenant ses informations(pseudo et mot de passe tempo), et tu lui donne une date d'expiration de 6 mois par exemple ...

ATTENTION : n'enregistre jamais les mots de passe originaux dans les cookies(par mesure de sécurité), sinon, tu peut y conserver un mot de passe temporaire crypté !!!

Donc quand l'utilisateur ouvre la première page de ton site ...
Tu vérifie si le cookie existe, si c'est le cas, alors tu vérifie les informations, or, que le pseudo existe dans la base de données, si c'est le cas, tu vérifie si le mot de passe temporaire enregistré dans ta bdd et égale a celui enregistré dans le cookie, si c'est le cas, alors tu connecte l'utilisateur en créant la session !


Mettez en résolu quand c'est résolu -.- ...
0
tomy2904 Messages postés 324 Date d'inscription   Statut Membre Dernière intervention   31
 
Merci beaucoup! Pourriez-vous me donner une base ou une idée de code? Ou un tuto?

Merci!
0
JooS Messages postés 2468 Date d'inscription   Statut Membre Dernière intervention   228
 
Ben comme base, j'imagine un truc comme ça !

$newMdpTempo = md5(time());
//SI LA CONNEXION A RéUSSI, TU CREE TA SESSION COMME D'HABITUDE, ET TU Y STOCKE LE PSEUDO ET LE MOT DE PASSE TEMPORAIRE(PAS L'ORIGINAL), ET TU AJOUTE LA PARTIE SUIVANTE 
//TU METS A JOUR LE MOT DE PASSE TEMPORAIRE(bdd) AVEC $newMdpTempo  
if(isset($_POST['reminder'])) {  
  $time = time()+180*86400; // 6mois  
  setcookie('pseudo',$_POST['pseudo'],$time);  
  setcookie('mdptempo',$newMdpTempo ,$time);  
  setcookie('cook_expire',$time,$time);  
}


Et au début de chaque page, tu mets ...
if(isset($_COOKIE['pseudo']) AND isset($_COOKIE['mdptempo']) AND isset($_COOKIE['cook_expire'] AND is_numeric($_COOKIE['cook_expire']) AND !isset($_SESSION['pseudo'])) {  
    //TU VERIFIE SI LE PSEUDO EXISTE DANS TA BDD  
    if(!empty($datas)) {  
      if($_COOKIE['mdptempo'] == $datas['mdptempo']) {  
        $newMdpTempo = md5(time());  
        //TU METS A JOUR LE MOT DE PASSE TEMPORAIRE(bdd) AVEC $newMdpTempo  
        $_SESSION['pseudo'] = $datas['pseudo'];  
        $_SESSION['mdptempo'] = $newMdpTempo;  
        setcookie('mdptempo',$mdptempo,$_COOKIE['cook_expire']);  
      }  
    }  
}  

PS : $datas c'est le tableau qui contiens les données extraite de ta base de données.

Mettez en résolu quand c'est résolu -.- ...
0
Gui
 
Pourquoi ne pas faire de l'objet et faire appel à une classe dans chacune de tes pages au lieu de marquer un gros bloc de code en début de page ? ?

Exemple :
<?php include ('nomdetapage.php');
$nomdetaclasse->nomdetafonction();
?>

Plus simple et plus pratique.
0