preventing multiple form submission with php
A dynamic web aplication contains atleast a web form that stores data in any database. major issue is data redundancy . we discussed already in my previous post preventing multiple form submission with javascript.
even though it works partially ,we can prevent it by server side also .
we use two methods to prevent multiple form submission
Redirecting user to another page
when a form submitted to server, we process the input and send user to another success full or error page.
using hidden field
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <?php session_start(); $rand_string=md5(uniqid(rand(), true)); $_SESSION['s_form']=$rand_string; $errors=""; if(isset($_POST['Submit']) and $_POST['s_form_randomizor']==$_SESSION['s_form']){ if($_POST['names']==""){ $errors="Names field required."; }else{ $_SESSION['s_form']=$rand_string; } } ?> |
HTML part
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Prevent multple form submission</title> </head> <body> <?php echo (isset($_POST['Submit']) and $errors!="")?$errors:'';?> <form id="s_form" name="form1" method="post" action=""> <input name="names" type="text" id="names" /> <input type="submit" name="Submit" value="Submit" /> <input type="hidden" name="s_form_randomizor" value="<?php echo $rand_string;?>"/> </form> </body> </html>
Download Source Code
prevent-multlple-form-submission
Popularity: 8% [?]
