Créer "se souvenir de moi"

Fermé
tomy2904 Messages postés 324 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 20 avril 2013 - 30 nov. 2011 à 15:48
 Gui - 14 janv. 2014 à 11:12
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!

3 réponses

Fallentree Messages postés 2309 Date d'inscription mercredi 25 février 2009 Statut Membre Dernière intervention 22 juillet 2019 209
30 nov. 2011 à 17:04
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 mardi 22 janvier 2008 Statut Membre Dernière intervention 8 juin 2016 228
Modifié par JooS le 30/11/2011 à 17:05
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 mardi 8 avril 2008 Statut Membre Dernière intervention 20 avril 2013 29
30 nov. 2011 à 18:49
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 mardi 22 janvier 2008 Statut Membre Dernière intervention 8 juin 2016 228
Modifié par JooS le 1/12/2011 à 16:04
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
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