Home > Article > Backend Development > php prevents forms from being submitted repeatedly, php prevents forms from being submitted_PHP tutorial
When users submit the form, the same record may be repeatedly inserted into the database due to network speed, or the webpage is maliciously refreshed. , this is a more difficult question. We can start from the client and server side together to try to avoid repeated submission of the same form.
1. Use client script
When the user clicks the "Submit" button, the button will become gray and unavailable
In the above example, the OnClick event is used to detect the user's submission status. If the "Submit" button is clicked, the button will immediately Set to an invalid state and the user cannot click the button to submit again.
There is another method, which also uses the function of JavaScript, but uses the OnSubmit() method. If the form has been submitted once, a dialog box will pop up immediately. The code is as follows:
In the above example, if the user has clicked the "Submit" button, the script will automatically record the current status and increase the submitcount variable by 1. When the user attempts to submit again, the script will determine The submitcount variable value is non-zero, indicating that the user has submitted the form, thereby avoiding repeated submission of the form.
2. Use session (this is the same as JSP processing method)
Using PHP's Session function can also avoid repeated submission of forms. Session is saved on the server side. The Session variable can be changed while PHP is running. The next time you access this variable, you will get the newly assigned value. Therefore, you can use a Session variable to record the value submitted by the form. If it does not match, it is considered It is the user who is submitting repeatedly.
Code of page A:
[php]
view plaincopy