Comment empecher un rechargement de page apres un formulaire

ppmtppmt Member
Bonjour

Un peu HS mais pas trop quand meme.

PluXml a-t'il un mecanisme pour gerer les reload apres avoir envoye un formulaire?

Dans le plugin plxMyShop il se trouve qu'avoir avoir valide une commande si on fait un reload et bien la meme commande est envoye de retour

En cherchant sur Google il parle de Post/Get/Redirect pattern mais tout mais essai ne sont pas tres concluant.

J'arrive a bloquer le refresh mais dans ce cas la on ne voit plus le message de succes :(

Est-ce que je pourrais voir un example qui soit utilise dans PluXml ou bien un plugin?

Merci d'avance

Réponses

  • Bonjour,

    Je n'ai pas d'exemple à te donner je peux juste te guider, désolé.

    Il faut soit:
    -faire l'appel du script en ajax
    -faire une redirection vers le la page du formulaire après le traitement de celui-ci. Il faut alors sauvegarder les données en session sinon elle seraont perdue ( données, erreurs, ...)

    Bonne programmation
  • Merci pour ta reponse Beduck.

    Je penche pour ta 2eme solution mais malheureusement mes connaissances sont assez limite dans ce domaine.
  • à force de me pencher sur plxMyShop, je n'ai pas regardé les nouveaux du forum depuis plusieurs jours.

    pour éviter les demandes de redirection, il faut bien séparer 2 parties :
    - d'un côté les affichages, appelés avec des méthodes GET, les affichages s'occupent juste ... d'afficher :) les données à partir des différentes base de donnés (cela inclus les fichiers, les sessions, etc...)
    - de l'autre côté les actions, appelées avec des méthodes POST. les actions s'occupent de modifier les données et se finissent par une redirection vers un affichage ce qui a pour résultat de rafraichir cette affichage et donc pas de demande du navigateur de renvoyer la requête POST.

    pour plxMyShop la partie qui posait problème mélange plusieurs affichages d'informations et plusieurs actions donc cela aurait donné un peu plus de travail de découper tout cela.
  • Oui c'est le probleme que j'avais. Je n'arrivais pas a trouver l'endroit ou faire ma redirection...Est-ce un "probleme" qui devrait etre corrige a long terme ou bien ce serait vraiment trop complique pour pas grand chose au final?
  • le problème était surtout l'e-mail qui était renvoyé plusieurs fois. maintenant que c'est corrigé, je pense qu'on peut le garder comme ça, ce n'est pas dans les habitudes de la plupart des visiteurs d'appuyer sur F5 sur toutes les pages pour voir le résultat.
  • J'avais meme pas realise que tu l'as deja fixe. J'ai rate le commit pour ca! il faut que je regarde comment tu as fait ca :)

    En tout cas je confirme que le mail n'est plus envoye dorenavant.

    Merci
Connectez-vous ou Inscrivez-vous pour répondre.