I am new to PHP, I had a problem in registering a user in Database. I want to first validate the form using javascript then form action to perform which will redirect it to another page containing PHP code and SQL queries. But the problem is it only validates Username and Email. No other field is checked by javascript. Register.php
<script type = "text/javascript">
function initthis() {
document.getElementById("signup").disabled = true;
}
function dis_enable_submit() {
if (document.getElementById("t&d").checked == 1) {
document.getElementById("signup").disabled = false;
document.getElementById("signup").className = "enabled";
} else {
document.getElementById("signup").disabled = true;
document.getElementById("signup").className = "disabled";
}
}
window.onload = initthis;
function validateForm() {
var a = document.forms["register"]["duser"].value;
var b = document.forms["register"]["demail"].value;
var c = document.forms["register"]["dcemail"].value;
var d = document.forms["register"]["dpwd"].value;
var e = document.forms["register"]["dcpwd"].value;
if (a == null || a == "") {
document.getElementById("duser").style.background = "#FDFCDC";
return false;
}
var atpos = b.indexOf("@");
var dotpos = b.lastIndexOf(".");
if (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= b.length) {
document.getElementById("demail").style.background = "#FDFCDC";
return false;
} else {
document.getElementById("tick").src = "images/tick.gif";
}
if (c == null || c == "") {
document.getElementById("dcemail").style.background = "#FDFCDC";
alert("Email doesn't match");
return false;
}
if (c != b) {
alert("Email doesn't match");
return false;
}
if (d == null || d == "") {
document.getElementById("dpwd").style.background = "#FDFCDC";
return false;
}
if (e == null || e == "") {
document.getElementById("dcpwd").style.background = "#FDFCDC";
alert("Password doesn't match");
return false;
}
if (e != d) {
alert("Password doesn't match");
return false;
}
}
This is FORM which is to be validate
<form name="register" onsubmit="return validateForm();" method="post" action="getdata.php">
<table border="0">
<tr>
<td colspan="2" style="background:url('images/register.jpg') no-repeat; height:50px; width: 350px;"></td>
</tr>
<tr>
<td>
<label>*Username:</label>
</td>
<td>
<input name="duser" id="duser" value="" type="text" spellcheck="false" size="20" />
</td>
</tr>
<tr>
<td>
<label>*Email:</label>
</td>
<td>
<input name="demail" id="demail" value="" type="text" size="20" />
</td>
</tr>
<tr>
<td>
<label>*Confirm Email:</label>
</td>
<td>
<input name="dcemail" id="dcemail" value="" type="text" size="20" />
</td>
</tr>
<tr>
<td>
<label>*Password:</label>
</td>
<td>
<input name="dpwd" id="dpwd" value="" type="password" size="20" />
</td>
</tr>
<tr>
<td>
<label>*Confirm Password:</label>
</td>
<td>
<input name="dcpwd" id="dcpwd" value="" type="password" size="20" />
</td>
</tr>
<tr>
<td>
<label>*Gender:</label>
</td>
<td>
<input type="radio" name="gender" id="gender" value="1">Male
<input type="radio" name="gender" value="0">Female</td>
</tr>
<tr>
<td>
<label>Birthday:</label>
</td>
<td>
<input name="bday" id="bday" type="date" size="20" />
</td>
</tr>
<tr>
<td align="middle">
<input id="signup" class="button" type="submit" value="Sign Up" style="font-size:15px;" />
</td>
</tr>
</table>
</form>
getdata.php
<?php
$_POST[duser];
$_POST[demail];
$_POST[dpwd];
$_POST[gender];
$con=mysqli_connect("localhost","root","root","MyDB");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
mysqli_query($con,"INSERT INTO Users (UserName, Email, Password, Gender)
VALUES ('$_POST[duser]', '$_POST[demail]','$_POST[dpwd]',$_POST[gender] )");
mysqli_close($con);
header("Location: successful.php");
exit();
?>
onblur()