|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre habitué
![]() Inscription : mai 2007 Messages : 131 ![]() |
Bonjour.
J'ai un léger problème avec les sesssions et les formulaires : si je gère une session, et que j'utilise un formulaire, il n'est pas mis en cache : c'est embêtant pour débugger : je valide, paf, parse error, je corrige, je clique sur précédent, avertissement d'expiration, et pour finir j'ai perdu toute ma saisie (IE et Firefox). En cherchant, j'ai fini par tomber sur session.cache_limiter dans php.ini. Il était sur nocache, j'ai mis private, et tout est rentré dans l'ordre. Le problème c'est qu'à partir de là, mes pages sont en cache malgré que j'ai mis "vérifier à chaque visite" dans IE. Même si je fais réactualiser, aucun changement. Pas de problème avec Firefox. J'ai aussi testé private_no_expire. Donc soit les pages sont "complètement" cachées, ce qui n'est pas top quand on a un contenu dynamique, soit elles ne sont pas cachées du tout et ça ne marche pas quand je fais précédent. Il n'y a pas une solution intermédiaire ?Je n'avais pas ce problème en cold fusion (et je suppose que si on fait du ssl on a aussi un problème de cache ...) une idée ? |
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() Inscription : mai 2007 Messages : 131 ![]() |
Il semblerait que session.cache_limiter = private, must-revalidate résolve le problème. Je ne mets pas résolu car je n'ai pas complètement testé.
edit : ça a l'air de fonctionner. mais si c'est sur nocache et qu'on peut pas modifier php.ini (chez un hébergeur par exemple), il faudra mettre session_cache_limiter ('private, must-revalidate') avant ou après session_start() dans chaque script avec un formulaire. En principe c'est avant, mais j'ai vu un post qui disait que le mettre après permettait d'overrider les headers envoyés par session_start() ... |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com