Bonjour à tous !
Mon problème relève plus de la logique que de la technique !
Pour accèder à un espace privé, je demande l'identification et je glisse gentiment un cookie sur le PC de l'identifié.
Ce cookie va servir à identifier le visiteur partout sur le site, à chaque chargement de page protégée. Il stocke un code qui correspond à une entrée 'code' dans la base de données des inscrits qui sert à sécurisé l'accès aux données.
Le cookie est donc stocké sur le PC et le code qu'il contient à l'instant T est lui aussi stocké en BDD. Si les deux match alors on récupère l'identifiant du visiteur et toutes ses infos.
Jusqu'ici ce cookie était un cookie de session : la fenêtre une fois fermée, il était supprimé.
-> À la demande des visiteurs, j'ai ajouté une option "se souvenir de moi".
Et là ça se corse !
Le problème :
Si l'user se logue entre temps sur un PC (B) : un nouveau code est généré et mis à jour en base. Il reçoit un cookie.
Admettons à présent que le visiteur se reconnecte le soir sur son PC (A), le cookie de ce PC ne correspond plus à celui de la base et on lui demande de s'identifier à nouveau !
Une solution serait peut-être de mémoriser en BDD les anciens code générés genre les 5 derniers pour que les cookies puissent continuer de "matcher" ?
Mais je me demande si je fais pas fausse route depuis le début !
Comment font les sites de e-commerce pour gérer cette fonction : "se souvenir de moi" ?
Merci à tous
Mon problème relève plus de la logique que de la technique !
Pour accèder à un espace privé, je demande l'identification et je glisse gentiment un cookie sur le PC de l'identifié.
Ce cookie va servir à identifier le visiteur partout sur le site, à chaque chargement de page protégée. Il stocke un code qui correspond à une entrée 'code' dans la base de données des inscrits qui sert à sécurisé l'accès aux données.
Le cookie est donc stocké sur le PC et le code qu'il contient à l'instant T est lui aussi stocké en BDD. Si les deux match alors on récupère l'identifiant du visiteur et toutes ses infos.
Jusqu'ici ce cookie était un cookie de session : la fenêtre une fois fermée, il était supprimé.
-> À la demande des visiteurs, j'ai ajouté une option "se souvenir de moi".
Et là ça se corse !
Le problème :
Si l'user se logue entre temps sur un PC (B) : un nouveau code est généré et mis à jour en base. Il reçoit un cookie.
Admettons à présent que le visiteur se reconnecte le soir sur son PC (A), le cookie de ce PC ne correspond plus à celui de la base et on lui demande de s'identifier à nouveau !
Une solution serait peut-être de mémoriser en BDD les anciens code générés genre les 5 derniers pour que les cookies puissent continuer de "matcher" ?
Mais je me demande si je fais pas fausse route depuis le début !
Comment font les sites de e-commerce pour gérer cette fonction : "se souvenir de moi" ?
Merci à tous