How to prevent form resubmission when page is refreshed (F5 / CTRL+R)



https://stackoverflow.com/questions/6320113/how-to-prevent-form-resubmission-when-page-is-refreshed-f5-ctrlr

https://www.webtrickshome.com/faq/how-to-stop-form-resubmission-on-page-refresh


https://www.sitepoint.com/community/t/stop-form-from-being-resubmitted-on-browser-reload/3343

https://wordpress.stackexchange.com/questions/96564/how-to-stop-form-resubmission-on-page-refresh

How To Stop Form Resubmission On Page Refresh?

Basically, the general idea is to redirect the user to some other pages after the form submission which would stop the form resubmission on page refresh but if you need to hold the user in the same page after the form is submitted, you can do it in multiple ways.

Unset Form Data 

One way to stop page resubmission on page refresh is to unset the form data after it is submitted so that the variable storing form data becomes empty and wrap up your form processing block of codes to check if the form is empty.
if(!empty($_POST) && $_SERVER['REQUEST_METHOD'] == 'POST'){
 $data = // processing codes here
 unset $data;
}
This will make $data empty after processing and the first clause would stop form resubmission on page refresh.

Javascript

This method is quite easy and blocks the pop up asking for form resubmission on refresh once the form is submitted. Just place this line of javascript code at the footer of your file and see the magic.
<script>
if ( window.history.replaceState ) {
  window.history.replaceState( null, null, window.location.href );
}
</script>

Comments

Popular posts from this blog

Create a RESTful API using PHP, My-sql and Slim-Framework

DeltaPi softwares