I am using wordpress as a platform for my website and wrote following code to submit a form to mySQL database. The problem is, whenever I submit a from, it appears twice on the database. I am wondering what caused the problem.
<?php
echo $sql;
$name='';
$Gender=0;
$HPV=0;
$HIV=0;
$Herpes=0;
$symptoms=0;
$diagnosed=0;
$A=0;
$E=0;
$C=0;
$QNumber=0;
?>
<?php if (isset($_POST['submit'])) {
$db_host = 'localhost';
$db_user = '';
$db_pwd = '';
$database='';
mysql_connect($db_host, $db_user, $db_pwd);
mysql_select_db($database);
$name= $_POST['username'];
if (isset($_POST['Female'])) {$Gender=1;}
if (isset($_POST['Male'])) {$Gender=2;}
if (isset($_POST['Herpes'])) {$Herpes=1;}
if (isset($_POST['HPV'])) {$HPV=1;}
if (isset($_POST['HIV'])) {$HIV=1;}
if (isset($_POST['Symptoms'])) {$symptoms=1;}
if (isset($_POST['Diagnosed'])){ $diagnosed=1;}
if (isset($_POST['Awareness'])){ $A=1;}
if (isset($_POST['Education'])){ $E=1;}
if (isset($_POST['Counseling'])){ $C=1;}
$Qnumber=$_POST['Number'];
$sql = "INSERT INTO QuestionAnswer (name, HPV,HIV,Herpes,Reach,Gender,Awareness,Education,Counseling,Symptoms,Diagnosed)
VALUES ('" . $name . "',$HPV,$HIV,$Herpes,$QNumber,$Gender,$A,$E,$C,$symptoms,$diagnosed)";
mysql_query($sql);
mysql_close();
} ?>
<h2>Data Entery</h2>
<form enctype="multipart/form-data" method="post" action="" >
Name: <input name="username" type="text" />
Gender : <input name="Female" type="checkbox" />Female <input name="Male" type="checkbox" />Male
Diseases: <input name="Herpes" type="checkbox" />Herpes <input name="HPV" type="checkbox" />HPV <input name="HIV" type="checkbox" /> HIV
Symptoms: <input name="Symptoms" type="checkbox" /> Yes
Diagnosed: <input name="Diagnosed" type="checkbox" /> Yes
Number of Q&A : <input name="Number" type="text" />
Awareness: <input name="Awareness" type="checkbox" /> Yes
Education: <input name="Education" type="checkbox" /> Yes
Counseling: <input name="Counseling" type="checkbox" /> Yes
<input name="submit" type="submit" value="submit" />
</form>
Simply use the Redirect Header, to avoid Duplication. Some time it may hit twice, to avoid use the following header.
You can specify the actual file name (or) URL instead of page.php
Your PHP Source Code should be