Page 1 sur 1

Connexion persisante

Posté : 30 déc. 2014, 19:26
par blinz
Salut,
Je vous contacte aujourd'hui afin d'être aiguillé pour faire un cookie pour une connexion persistante.
un formulaire avec une case a cocher se souvenir de moi

mon code actuel, enfin l'essentiel



// Vérification de la validité des informations

   
$erreurs = array();   //tableau contenant des messages d'erreurs

if(!empty($_POST)) {//soumission du formulaire
  

//vérification du pseudo
if( empty( $_POST['company'] ) ){
  $erreurs['company'] = 'Renseigner un pseudo';
}

//vérification du mot de passe
if( empty( $_POST['password'] ) ){
  $erreurs['password'] = "le mot de passe est requis";
}

//Cookie pour le ... se souvenir de moi


	//le tableau d'erreurs est vide alors on insère les données
	if(count($erreurs) == 0) {

		// Hachage du mot de passe
		$password = sha1($_POST['password']);

//insertion des données
//pré-condition : le tableau $tabErreurs doit être vide c-a-d ne contient pas de message d'erreur
if( count( $tabErreurs ) == 0){
  $company = $_POST['company'];
  $password_hache = sha1($_POST['password']);
  $message = authentificationPro( $company, $password_hache ); //appel de la fonction d'authentification
	} 
}

}
<input type="checkbox" name="remember">Se souvenir de moi  

Re: Connexion persisante

Posté : 30 déc. 2014, 19:52
par Elie
Creer un cookie c'est pas très dur ...
Ce qui est dur c'est de vérifie si le cookie existe et de lancer automatiquement la fonction authentificationPro() si le mec a un cookie et qu'il n'est pas encore identifié.

Donc je te conseille dans la fonction authentificationPro() de mettre un truc genre
if(!empty($_POST['remember'])) setcookie('identification', serialize(array($company, $password_hache)), mktime(0, 0, 0, date('m'), date('d'), date('Y')+1), '/');
Voilà la première étape pour creer un cookie valable 1 an.

Après tu lances le truc donc si il y a le cookie mais pa de session
if(empty($_SESSION['membre']) && !empty($_COOKIE['identification'])) /* ICI CE QUE TU VEUX */