Prévenir avant exipration de session


ygalr22
WRInaute discret
WRInaute discret
 
Messages: 140
Inscription: 9 Jan 2008

Prévenir avant exipration de session

Message le Lun Oct 20, 2008 14:33

Bonjour à tous,

Voila, sur mon site j'ai un formulaire qui est utilisé par les membres pour écrire des articles.

Le problème est qu'en général un article met plus de temps à être écrit que la durée de session, résultat, lorsque le membre valide son formulaire, les données sont perdures...

J'aimerais rallonger ce temps de session, pour ca j'ai penssé à deux méthodes possibles:

Rallonger le temps de session à l'ouverture de la page en question.

OU

Mettre en place une espèce de popup qui prévient que la session arrive à expiration et qui propose de rallonger le temps de session.

J'imagine que le plus simple à mettre en place est la première option, mais comment puis-je faire??

Si vous avez des infos, je suis preneur!!

Merci!
Dernière édition par ygalr22 le Lun Oct 20, 2008 17:07, édité 1 fois.


finstreet
WRInaute accro
WRInaute accro
 
Messages: 16999
Inscription: 10 Juil 2005

Message le Lun Oct 20, 2008 14:37

pour le rallongement du durée de session, c dans ton php ini et ca dépend de ton hébergeur si il accepte que tu le modifies ou pas

tu as aussi la possibilité de coupler la session avec un cookie sur la machine de l'utilisateur ... là tu controles mieux et plus facilement la durée de sessions


SpeedAirMan
WRInaute accro
WRInaute accro
 
Messages: 2612
Inscription: 1 Juin 2007

Message le Lun Oct 20, 2008 14:43

Le mieux c'est que tout soit transparent pour le visiteur. Si tu peux ne pas l'ennuyer avec de telles choses, c'est mieux. Surtout que beaucoup d'internautes ne savent pas ce qu'est une session.


ygalr22
WRInaute discret
WRInaute discret
 
Messages: 140
Inscription: 9 Jan 2008

Message le Lun Oct 20, 2008 15:00

SpeedAirMan:Donc, je doit plutot utiliser la première idée, c'est ce que je pensait. Merci

finstreet: Je suis chez OVH un 60Gp, je ne sais pas si j'ai accès au php ini, je vais regarder.

Plutôt que de rallonger le temps de session global, j'aimerais rallonger la session seulement sur certaines pages, c'est faisable?


KOogar
WRInaute accro
WRInaute accro
 
Messages: 3974
Inscription: 16 Nov 2004

Message le Lun Oct 20, 2008 17:30

lu

Finstreet a raison, il te faut coupler la session avec un cookie et reconnecter automatiquement le membre si la session est terminée car avec un 60gp tu n'auras pas acces aux fichiers serveur.

c'est pas simple a gerer, j'avais fait un ptit article sur ce sujet ici

Robinson
WRInaute passionné
WRInaute passionné
 
Messages: 2233
Inscription: 25 Oct 2005

Message le Lun Oct 20, 2008 17:33

Une session se termine quand il n'y a eu aucune activité depuis X minutes.
Pour éviter cela, pourquoi ne pas mettre en place un tout ptit script ajax qui exécute toutes les 10 minutes un petit fichier avec une simple session.
Script seulement présent sur la page désirée.


ygalr22
WRInaute discret
WRInaute discret
 
Messages: 140
Inscription: 9 Jan 2008

Message le Lun Oct 20, 2008 18:46

KOogar: merci pour ton lien, je vais étudier ca et je me retourne vers vous si j'ai un problème...

Robinson: c'est une idée à creuser, je vais voir ca, c'est peut être même plus simple...

Merci pour vos réponses, je reviendrais vers vous is j'ai encore un problème la dessus...

;)


finstreet
WRInaute accro
WRInaute accro
 
Messages: 16999
Inscription: 10 Juil 2005

Message le Lun Oct 20, 2008 19:05

ou alors dernière solution : un énorme chrono

Un truc genre : Il ne vous reste plus que 5 mn 34 avant que votre article ne disparaisse

Ca plairait pas à tes visiteurs ? lol


UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 8576
Inscription: 23 Nov 2005

Message le Lun Oct 20, 2008 19:26

Le webmail de Free (imp pour le nommer) fonctionne avec un système d'actualisation de la boîte de saisie à l'expiration de la session.

Vu que c'est du PHP, ca vaudrait peut-être le coup d'aller mettre les mains dans le cambouis pour voir comment ca a été pensé.


Dharius
WRInaute impliqué
WRInaute impliqué
 
Messages: 840
Inscription: 6 Avr 2005

Message le Lun Oct 20, 2008 20:39

Ce que je fais : une simple zone javascript / ajax (ou alors iframe) qui se rafraîchie régulièrement (ttes lesx secondes), avec dans cette "frame" juste session_start... ça prolonge indéfiniment la sessions tant que la personne est sur cette page...


finstreet
WRInaute accro
WRInaute accro
 
Messages: 16999
Inscription: 10 Juil 2005

Message le Lun Oct 20, 2008 22:10

et c pas trop gourmand en ressource ?


ygalr22
WRInaute discret
WRInaute discret
 
Messages: 140
Inscription: 9 Jan 2008

Message le Mar Oct 21, 2008 0:05

finstreet a écrit:ou alors dernière solution : un énorme chrono

Un truc genre : Il ne vous reste plus que 5 mn 34 avant que votre article ne disparaisse

Ca plairait pas à tes visiteurs ? lol


Ca peut être drôle tu me dira!! :lol:

UsagiYojimbo: Je pensais exactement à un truc dans le genre de free, apres, me plonger dans le code...

Dharius: C'est interessant mais je me pose la même question que finstreet...

Autrement, je pensait qu'il existai une fonction à appeler lors de la déclaration de session pour lui donner un temps. Non? :?


UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 8576
Inscription: 23 Nov 2005

Message le Mar Oct 21, 2008 7:14

Je crois que pour les Session c'est soit lors de la fermeture du navigateur, soit lorsque la valeur indiquée dans le php.ini est atteinte. C'est pour les cookies que tu peut definir, pour chacun, la date d'expiration.


Dharius
WRInaute impliqué
WRInaute impliqué
 
Messages: 840
Inscription: 6 Avr 2005

Message le Mar Oct 21, 2008 8:33

J'ai un serveur dédié... j'ai pas vraiment fait attention si ça prenait autant de ressource que ça. Et puis c'est rare que plusieurs dizaines de personnes écrivent des articles en même temps.


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités