Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1467 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Comment mettre une page dans le cache suite à un POST ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Comment mettre une page dans le cache suite à un POST ?

n°591067
misterping​uin
Posté le 15-12-2003 à 13:19:50  profilanswer
 

Bonjour, je cherche à éviter le message des navigateurs demandant le renvoi des données suite à l'envoi d'un formulaire, qqun pourrait il me donner une piste ?
 
pour faire plus simple, j'ai :
 
- page1.htm : un formulaire envoyé en méthode POST
- page2.php : script PHP qui traine les données et affiche le résultat
- page3.php : page sur laquelle on arrive depuis page2.php
 
ce que je voudrais arriver à faire : en cliquant sur précédent depuis page3.php, arriver directement sur page2.php sans renvoyer les données
 
merci pour votre aide


Message édité par misterpinguin le 15-12-2003 à 13:21:08
mood
Publicité
Posté le 15-12-2003 à 13:19:50  profilanswer
 

n°591137
deliriumtr​emens
sic transit intestinal...
Posté le 15-12-2003 à 14:31:36  profilanswer
 

Pas possible. Du moment que ton page2.php réceptionne des données de formulaire, le retour par voie d'historique (précédent) te mettra ce message.
 
La seule solution, mais qui ne fait pas franchement ce que tu veux, c'est d'empêcher d'aller sur page2.php si tu ne viens pas de page1.htm, donc d'éviter le retour et renvoi des données...

n°591317
misterping​uin
Posté le 15-12-2003 à 18:50:32  profilanswer
 

DeliriumTremens a écrit :

Pas possible. Du moment que ton page2.php réceptionne des données de formulaire, le retour par voie d'historique (précédent) te mettra ce message.
 
La seule solution, mais qui ne fait pas franchement ce que tu veux, c'est d'empêcher d'aller sur page2.php si tu ne viens pas de page1.htm, donc d'éviter le retour et renvoi des données...
 

pourtant sur certains sites, mais peut etre pas en php donc, tu fais une recherche via un formulaire, tu as les résultats, et si tu sélectionnes un produits puis revient en arriere, ta recherche se réaffiche ?


Message édité par misterpinguin le 15-12-2003 à 18:50:47
n°591418
misterping​uin
Posté le 15-12-2003 à 22:58:26  profilanswer
 

:bounce:

n°591579
deliriumtr​emens
sic transit intestinal...
Posté le 16-12-2003 à 09:39:30  profilanswer
 

Donne un exemple de site qui fait ce que tu veux, on verra bien comment c'est fait !

n°591586
misterping​uin
Posté le 16-12-2003 à 09:56:43  profilanswer
 

travelprice.fr
havasvoyages.fr
 
a priori les 2 tournent sous windows

n°591651
deliriumtr​emens
sic transit intestinal...
Posté le 16-12-2003 à 11:40:13  profilanswer
 

Bon ben j'avais fait un formulaire de recherche qui ressemble à ce qu'on trouve sur Havasvoyages.fr, donc voici l'idée générale.
 
Une page search.php, avec formulaire en GET. Pourquoi du GET ? parce qu'il y a beaucoup de champs (et flemme de faire un champ caché pour transmettre chaque paramètre de la recherche, utile par exemple pour avoir des résultats sur plusieurs pages).
 
Un champ caché. Si sa valeur vaut 0, le formulaire est affiché. Si une recherche est lancée, sa valeur vaut 1, et lorsque cette valeur vaut 1, le formulaire disparaît pour faire place au résultat de la recherche.
 
Si tu cliques sur les résultats (qui sont des liens), tu ouvres une nouvelle page. Si tu reviens en arrière, tu tombes sur la page de résultat sans message de "renvoi des données".
 
J'espère que c'est à peu près clair.

n°591675
misterping​uin
Posté le 16-12-2003 à 11:58:46  profilanswer
 

DeliriumTremens a écrit :

Bon ben j'avais fait un formulaire de recherche qui ressemble à ce qu'on trouve sur Havasvoyages.fr, donc voici l'idée générale.
 
Une page search.php, avec formulaire en GET. Pourquoi du GET ? parce qu'il y a beaucoup de champs (et flemme de faire un champ caché pour transmettre chaque paramètre de la recherche, utile par exemple pour avoir des résultats sur plusieurs pages).
 
Un champ caché. Si sa valeur vaut 0, le formulaire est affiché. Si une recherche est lancée, sa valeur vaut 1, et lorsque cette valeur vaut 1, le formulaire disparaît pour faire place au résultat de la recherche.
 
Si tu cliques sur les résultats (qui sont des liens), tu ouvres une nouvelle page. Si tu reviens en arrière, tu tombes sur la page de résultat sans message de "renvoi des données".

J'espère que c'est à peu près clair.

pas trop  :D  tu peux schématiser un peu ?
Merci

n°591694
deliriumtr​emens
sic transit intestinal...
Posté le 16-12-2003 à 12:18:12  profilanswer
 

Bon je te fais le "schéma" du système que j'utilise.
 
Sachant que c'est un système de pseudo-frames. Une seule page d'index avec des includes pour les différentes pages (classique).
La page de recherche est index.php?rub=are
 
Sur la page index.php, si $rub=="are", on include la page search.php, qui contient ceci (en gros).
 

Code :
  1. <?
  2. If ($ad=="1" )
  3. {
  4. $sql="SELECT ***"; //lancement de la recherche
  5. }
  6. Else
  7. {?>
  8. <form action ="get" action="index.php">
  9. //ici le formulaire avec les champs qui vont bien, puis
  10. <input type="hidden" name="ad" value="1" />
  11. <input type="hidden" name="rub" value="are" />
  12. <input type="submit" ... />
  13. </form>
  14. <?
  15. }
  16. If ($ad=="1" )
  17. $req=mysql_query($sql);
  18. while ($res=mysql_fetch_array($req))
  19. //ici les résultats, sous forme de lien dans mon cas, pour afficher les détails.
  20. //Si tu cliques sur le lien, une nouvelle page s'ouvre, si tu reviens tu retrouves la page de résultat
  21. ?>


 
Exemple ici


Message édité par deliriumtremens le 16-12-2003 à 12:18:59
n°593437
misterping​uin
Posté le 18-12-2003 à 13:47:54  profilanswer
 

merci pour ta réponse, qui me fait penser un truc tout bete, puisque j'utilise des sessions, je vais tester si la requete existe et la rééxucter si c'est le cas.
 
merci beaucoup !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Comment mettre une page dans le cache suite à un POST ?

 

Sujets relatifs
Petit probleme de redirection apres actualisation de la page.mettre a jour le fond d'ecran en c++
[ PHP / WML ] Header ?redonner le focus a une page ?
Mail en PHP... erreur...script dans HTML + problem de cache avec ISA (un petit peut urgent)
[PHP]trouver les images d'une page html => Regex ?[PHP] fonction qui returne true si 2 fichiers sont identiques
[Scheme] 2 tests identiques à la suite : comment faire mieux ? 
Plus de sujets relatifs à : [PHP] Comment mettre une page dans le cache suite à un POST ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR