Maison  >  Questions et réponses  >  le corps du texte

Comment empêcher la resoumission du formulaire lors de l'actualisation de la page (F5/CTRL+R)

<p>J'ai un formulaire simple qui soumet du texte à ma table SQL. Le problème est qu'une fois que l'utilisateur a soumis le texte, il peut actualiser la page et soumettre à nouveau les données sans remplir à nouveau le formulaire. Je peux rediriger l'utilisateur vers une autre page après avoir soumis le texte, mais je souhaite que l'utilisateur reste sur la même page. </p> <p>Je me souviens avoir lu quelque chose sur le fait de donner à chaque utilisateur un identifiant de session unique et de le comparer à une autre valeur, ce qui a résolu le problème que j'avais, mais j'ai oublié où il se trouvait. </p>
P粉151466081P粉151466081387 Il y a quelques jours452

répondre à tous(2)je répondrai

  • P粉817354783

    P粉8173547832023-08-30 09:58:46

    Je tiens également à souligner que vous pouvez utiliser des méthodes JavaScript window.history.replaceState pour empêcher les nouvelles soumissions sur les boutons d'actualisation et de retour.

    sssccc

    Preuve de concept : https://dtbaker.net/files/ Prevent-post-resubmit.php(le lien n'est plus valide)

    Je recommande toujours la méthode Post/Redirect/Get, mais il s'agit d'une nouvelle solution JS.

    répondre
    0
  • P粉043432210

    P粉0434322102023-08-30 09:17:22

    Utilisez des modèles de publication/redirection/obtention. http://en.wikipedia.org/wiki/Post/Redirect/Get

    Sur mon site Web, je stockerai le message dans un cookie ou une session, le redirigerai après la publication, lirai le cookie/la session, puis effacerai la valeur de cette session ou de cette variable de cookie.

    répondre
    0
  • Annulerrépondre