Aller au contenu

Sujets conseillés

Posté

Salut,

J'ai un site qui contient notamment des formulaires.

Je voudrais que :

- les formulaires ne soient pas en cache, ou plus précisément que la personne puisse revenir sur la page en question en appuyant sur le bouton retour de son navigateur sans avoir droit à l'avertissement de renvoi des données post, et sans que celles-ci soient renvoyées

- les images et le contenu soient en cache afin que le chargement soit plus rapide

Autre chose :

La gestion du cache des images dont le nom apparaît dans les css (les fonds notamment) est-elle différente du cache standard du navigateur ?

Posté

Bonjour,

- les formulaires ne soient pas en cache, ou plus précisément que la personne puisse revenir sur la page en question en appuyant sur le bouton retour de son navigateur sans avoir droit à l'avertissement de renvoi des données post, et sans que celles-ci soient renvoyées

Il semble que ce ne soit pas possible... comment empecher l'internaute de revenir à la page précédente ??

En revanche, tu peux blinder ton code de manière à maitriser le traitement du formulaire si les données sont envoyées une deuxième (ou Xième) fois.

- les images et le contenu soient en cache afin que le chargement soit plus rapide

Cela me parait difficile. Tu peux empecher le navigateur de les mettre en cache, mais l'obliger...

Posté
Il semble que ce ne soit pas possible... comment empecher l'internaute de revenir à la page précédente ??

Je ne veux pas l'empêcher de revenir, je veux juste qu'il y revienne SANS les données post qui existaient la première fois qu'il est passé (ou avec, mais sans avertissement postdata).

Cela me parait difficile. Tu peux empecher le navigateur de les mettre en cache, mais l'obliger...

<{POST_SNAPBACK}>

Même principe : je ne veux pas l'obliger. Ce que je cherche, c'est juste le fait que :

- je puisse passer mes données en post sans risque d'avertissement postdata au rechargement (et il me semble que c'est faisable en donnant une commande de cache mais je ne suis pas sûr)

- les données non formulaire de la page soient tout de même mises en cache

- et les deux en même temps

Posté (modifié)
- je puisse passer mes données en post sans risque d'avertissement postdata au rechargement (et il me semble que c'est faisable en donnant une commande de cache mais je ne suis pas sûr)

Alors pour ça je connais cette technique :

- l'utilisateur est sur la page form.php et valide ;

- la validation appelle store.php qui stocke les données ;

- store.php se termine par une redirection vers form.php via un « header("Location: ...") ».

Au moins ça évite que le rafraichissement de la page (via un F5 par exemple) renvoie des données.

Modifié par Hadrien
Posté

... ce qui fait qu'on doit logiquement pouvoir laisser le cache fonctionner normalement.

Je vais voir si cette solution est envisageable en l'état.

Merci

Posté (modifié)

<?php
// instructions empêchant le caching de la page:
// pour le protocole HTTP 1.1
header("Cache-control: private, no-cache");
// pour les anciennes versions du protocole HTTP
header("Expires: Mon, 25 Feb 2002 01:00:00 GMT"); // une date du passé
header("Pragma: no-cache");
?>

Tiré de cette article : http://developpeur.journaldunet.com/tutori...alidation.shtml

J'utilise cela dans certain formulaire, cela permer d'utiliser le bouton "Back" du navigateur et de conserver les données... :P

En espérant que ça t'aide !

**EDIT** Ne Fais pas attention au reste du code de cet article, il date un peu et il n'utilise pas les tableau de superglobals ... seul la gestion de cache est encore d'actualité !

Modifié par TheRec

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...