Does page reload ever cause post?

Solution 1:

Yes. If the page was loaded using POST data this will occur. To prevent this you need to implement the POST/REDIRECT/GET pattern.

Post/Redirect/Get (PRG) is a web development design pattern that prevents some duplicate form submissions, creating a more intuitive interface for user agents (users). PRG supports bookmarks and the refresh button in a predictable way that does not create duplicate form submissions.

Solution 2:

Yes. If someone refreshes the browser manually, it will ask them if they want to send the form data again. This will cause that code to get executed.