Revenir à la page précédente après plusieurs refresh

Revenir à la page précédente après plusieurs refresh - HTML/CSS - Programmation

Marsh Posté le 20-04-2004 à 11:53:48    

J'ai une page su laquelle un refresh est fait toutes les 2 min (consultation de jod d'impression), ce qui ajoute à fois une entrée dans l'historique.
 
Le pb c'est que pour revenir à la page précédente (et non pas cette même page 2 min plus tôt) il faut appuyer autant de fois sur le bouton "précédent" que refresh effectué !
Ou alors passer par un bouton de retour mais ce n'est pas pratique:
- Au niveau de l'utilisateur car il a l'habitude d'utiliser le bouton précédent du browser
- Au niveau du dev' car il faut reposter les critères précédemment selectionné par l'utilisateur afin de les positionner par défaut dans le formulaire.
 
Auriez-vous une solution à me proposer ?
 
J'ai à dispo HTML/JS/Perl ...

Reply

Marsh Posté le 20-04-2004 à 11:53:48   

Reply

Marsh Posté le 20-04-2004 à 12:00:20    

Salut,  
 
je ne vois pas le probleme car chez moi cela focntionne comme ce que tu veux obtenir.
 
Quels navigateurs, Quelle méthode de refresh ( pramètres ?? )
 
Pierre

Reply

Marsh Posté le 20-04-2004 à 12:18:09    

Chez moi aussi, utilise 1 tag meta pour faire ton refresh et pas 1 js avec 1 timer qui reposte ta page, je suppose que le probleme vient de la...

Reply

Marsh Posté le 20-04-2004 à 13:50:31    

En effet j'utilise ceci:
 

Code :
  1. function setTimer() {
  2.   setTimeout('document.autoPostForm.submit()', 120000);
  3. }
  4. <body topmargin='0' leftmargin='0' onKeyDown='cancelRefresh()' onLoad='setTimer()'>


 
Enfin, c'est le code d'un collègue mais c'est moi qui suis chargé de faire des modifs ...
 
eric_cartman > comment utiliser le tag ? Je ne suis pas ceinture noire de développement web (mon domaine c'est plutot le C).
 
Important: il faut que les paramêtres passés en POST depuis la page précédente (et qui ont permis de construire cette page) soient à nouveau postés !


Message édité par mog le 20-04-2004 à 13:54:09
Reply

Marsh Posté le 20-04-2004 à 18:00:48    

Si tu passes tes variables en GET et non en POST, tu peux utiliser  
 
window.setTimeout("document.location.reload()",12000);

Reply

Marsh Posté le 20-04-2004 à 20:46:41    

Et pourquoi pas une balise META toute bête :??:
 
<meta http-equiv="refresh" content="900" />
 
 
Comme sur http://news.google.fr/ par exemple...


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Marsh Posté le 20-04-2004 à 22:02:55    

Les données POST sont perdues avec un META refresh?

Reply

Marsh Posté le 20-04-2004 à 22:20:06    

Ah vi j'avais vu qu'il soumettait un formulaire...


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Marsh Posté le 21-04-2004 à 08:12:28    

Freekill > Ca m'ennuie beaucoup de passer en GET car les données provenant de la page précédente sont envoyées en POST et sont les même que celles soumises lors du refresh.
 
Il me faudrais alors faire 2 parties dans ma page en fonction du 'referer'. L'une qui récupère les données en POST et l'autre en GET.
 
De plus je ne suis pas sûr de ne pas dépasser la limite de taille du GET (je ne sais plus de combien elle est) avec mes paramêtres.


Message édité par mog le 21-04-2004 à 08:13:23
Reply

Marsh Posté le 21-04-2004 à 13:03:53    

Tout navigateur un peu sérieux demandera l'autorisation de l'utilisateur avant de réenvoyer des données POST, tu ne peux rien faire à cela.  [:spamafote]  
 
Sinon, tu peux aussi stocker tes variables dans un cookie, ou côté serveur avec les sessions.

Reply

Marsh Posté le 21-04-2004 à 13:03:53   

Reply

Marsh Posté le 21-04-2004 à 13:31:15    

On est arrivé à la même conclusion.
 
Pour le moment j'ai fait un bouton de retour vers la page précédente (elle est statique).
Dans une prochaine évolution on fera peut-être un cookie.
 
Merci pour vos avis/coup de main !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed