Please any help, below is my php code to store users information into the database when the user fill the html form. This is not storing the text but only store the file uploads. What is like the issue please? I am having issue with my code. It is not storing to the database but the file uploads work fine. Below is the php code
//Get application ID
function regnumber(){
$string = (uniqid(rand(), true));
return substr($string, 0,5);
}
$uid=$_SESSION['omrsuid'];
$regnumber = "MAB/".date("Y")."/".regnumber();
$ApplicantsName=$_POST['ApplicantsName'];
$PostApplied=$_POST['PostApplied'];
$Gender=$_POST['Gender'];
$DOB=$_POST['DOB'];
$Email=$_POST['Email'];
$ContactAddress=$_POST['ContactAddress'];
$Qualification=$_POST['Qualification'];
$Course=$_POST['Course'];
$LastSchoolAttended=$_POST['LastSchoolAttended'];
$Period=$_POST['Period'];
$CurrentEmployment=$_POST['CurrentEmployment'];
$CurrentDate=$_POST['CurrentDate'];
$CurrentAddress=$_POST['CurrentAddress'];
$CurrentPosition=$_POST['CurrentPosition'];
$CurrentEmployerPhone=$_POST['CurrentEmployerPhone'];
$PreviousEmployment=$_POST['PreviousEmployment'];
$PreviousDate=$_POST['PreviousDate'];
$PreviousAddress=$_POST['PreviousAddress'];
$PreviousJobTitle=$_POST['PreviousJobTitle'];
$PreviousEmployerPhone=$_POST['PreviousEmployerPhone'];
$FirstReferee=$_POST['FirstReferee'];
$FirstRefRelationship=$_POST['FirstRefRelationship'];
$FirstRefAddress=$_POST['FirstRefAddress'];
$FirstRefPhone=$_POST['FirstRefPhone'];
$FirstRefEmail=$_POST['FirstRefEmail'];
$SecondReferee=$_POST['SecondReferee'];
$SecondRefRelationship=$_POST['SecondRefRelationship'];
$SecondRefAddress=$_POST['SecondRefAddress'];
$SecondRefPhone=$_POST['SecondRefPhone'];
$SecondRefEmail=$_POST['SecondRefEmail'];
$DesiredDepartment=$_POST['DesiredDepartment'];
$himg=$_FILES["Passport"]["name"];
$extension1 = substr($himg,strlen($himg)-4,strlen($himg));
$wimg=$_FILES["certificates"]["name"];
$extension2 = substr($wimg,strlen($wimg)-4,strlen($wimg));
// allowed extensions
$allowed_extensions = array(".jpg","jpeg",".png",".pdf",".doc");
// Validation for allowed extensions .in_array() function searches an array for a specific value.
if(!in_array($extension1,$allowed_extensions))
{
echo "<script>alert('Your Passport has Invalid format. Only jpg / jpeg/ png format allowed');</script>";
}
if(!in_array($extension2,$allowed_extensions))
{
echo "<script>alert('Your Certificates has Invalid format. Only pdf format allowed');</script>";
}
else
{
//rename images
$husimg=md5($himg).time().$extension1;
$wifeimg=md5($wimg).time().$extension2;
move_uploaded_file($_FILES["Passport"]["tmp_name"],"images/".$husimg);
move_uploaded_file($_FILES["certificates"]["tmp_name"],"images/".$wifeimg);
$ret="select Email,ApplicantsName from tblregistration where Email=:Email || ApplicantsName=:ApplicantsName";
$query= $dbh -> prepare($ret);
$query->bindParam(':Email',$Email,PDO::PARAM_STR);
$query->bindParam(':ApplicantsName',$ApplicantsName,PDO::PARAM_STR);
$query-> execute();
$results = $query -> fetchAll(PDO::FETCH_OBJ);
if($query -> rowCount() == 0)
{
$sql="insert into registration(RegistrationNumber,UserID,ApplicantsName,PostApplied,Passport,Gender,DOB,Email,ContactAddress,Qualification,Course,LastSchoolAttended,Period,CurrentEmployment,CurrentDate,CurrentAddress,CurrentPosition,CurrentEmployerPhone,PreviousEmployment,PreviousDate,PreviousAddress,PreviousJobTitle,PreviousEmployerPhone,FirstReferee,FirstRefRelationship,FirstRefAddress,FirstRefPhone,FirstRefEmail,SecondReferee,SecondRefRelationship,SecondRefAddress,SecondRefPhone,SecondRefEmail,DesiredDepartment,certificates)values(:regnumber,:uid,:ApplicantsName,:PostApplied,:Passport,:Gender,:DOB,:Email,:ContactAddress,:Qualification,:Course,:LastSchoolAttended,:Period,:CurrentEmployment,:CurrentDate,:CurrentAddress,:CurrentPosition,:CurrentEmployerPhone,:PreviousEmployment,:PreviousDate,:PreviousAddress,:PreviousJobTitle,:PreviousEmployerPhone,:FirstReferee,:FirstRefRelationship,:FirstRefAddress,:FirstRefPhone,:FirstRefEmail,:SecondReferee,:SecondRefRelationship,:SecondRefAddress,:SecondRefPhone,:SecondRefEmail,:DesiredDepartment,:certificates)";
$query=$dbh->prepare($sql);
$query->bindParam(':regnumber',$regnumber,PDO::PARAM_STR);
$query->bindParam(':uid',$uid,PDO::PARAM_STR);
//$query->bindParam(':dom',$dom,PDO::PARAM_STR);
$query->bindParam(':ApplicantsName',$ApplicantsName,PDO::PARAM_STR);
$query->bindParam(':PostApplied',$PostApplied,PDO::PARAM_STR);
$query->bindParam(':Passport',$Passport,PDO::PARAM_STR);
$query->bindParam(':Gender',$Gender,PDO::PARAM_STR);
$query->bindParam(':DOB',$DOB,PDO::PARAM_STR);
$query->bindParam(':Email',$Email,PDO::PARAM_STR);
$query->bindParam(':ContactAddress',$ContactAddress,PDO::PARAM_STR);
$query->bindParam(':Qualification',$Qualification,PDO::PARAM_STR);
$query->bindParam(':Course',$Course,PDO::PARAM_STR);
$query->bindParam(':LastSchoolAttended',$LastSchoolAttended,PDO::PARAM_STR);
$query->bindParam(':Period',$Period,PDO::PARAM_STR);
$query->bindParam(':CurrentEmployment',$CurrentEmployment,PDO::PARAM_STR);
$query->bindParam(':CurrentDate',$CurrentDate,PDO::PARAM_STR);
$query->bindParam(':CurrentAddress',$CurrentAddress,PDO::PARAM_STR);
$query->bindParam(':CurrentPosition',$CurrentPosition,PDO::PARAM_STR);
$query->bindParam(':CurrentEmployerPhone',$CurrentEmployerPhone,PDO::PARAM_STR);
$query->bindParam(':PreviousEmployment',$PreviousEmployment,PDO::PARAM_STR);
$query->bindParam(':PreviousDate',$PreviousDate,PDO::PARAM_STR);
$query->bindParam(':PreviousAddress',$PreviousAddress,PDO::PARAM_STR);
$query->bindParam(':PreviousJobTitle',$PreviousJobTitle,PDO::PARAM_STR);
$query->bindParam(':PreviousEmployerPhone',$PreviousEmployerPhone,PDO::PARAM_STR);
$query->bindParam(':FirstReferee',$FirstReferee,PDO::PARAM_STR);
$query->bindParam(':FirstRefRelationship',$FirstRefRelationship,PDO::PARAM_STR);
$query->bindParam(':FirstRefAddress',$FirstRefAddress,PDO::PARAM_STR);
$query->bindParam(':FirstRefPhone',$FirstRefPhone,PDO::PARAM_STR);
$query->bindParam(':FirstRefEmail',$FirstRefEmail,PDO::PARAM_STR);
$query->bindParam(':SecondReferee',$SecondReferee,PDO::PARAM_STR);
$query->bindParam(':SecondRefRelationship',$SecondRefRelationship,PDO::PARAM_STR);
$query->bindParam(':SecondRefAddress',$SecondRefAddress,PDO::PARAM_STR);
$query->bindParam(':SecondRefPhone',$SecondRefPhone,PDO::PARAM_STR);
$query->bindParam(':SecondRefEmail',$SecondRefEmail,PDO::PARAM_STR);
$query->bindParam(':DesiredDepartment',$DesiredDepartment,PDO::PARAM_STR);
$query->bindParam(':certificates',$certificates,PDO::PARAM_STR);
$query->execute();
$LastInsertId=$dbh->lastInsertId();
if ($LastInsertId>0) {
echo '<script>alert("Registration form has been filled successfully.")</script>';
}
else
{
echo '<script>alert("Something Went Wrong. Please try again")</script>';
}
}
else
{
echo "<script>alert('Email Address already exist. Please try again with a new email.');</script>";
}
}
}
?>
And my HTML form
<h3 class="card-body-title" style="padding-top: 20px;color: red">1 Personal Data</h3>
<hr />
<div class="row">
<label class="col-sm-4 form-control-label">Position Applying For: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" name="PostApplied" value="" class="form-control" required='true'>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Passport Photograph: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="file" name="Passport" value="" class="form-control" required='true'>
</div>
</div><!-- row -->
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Gender: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<select type="text" name="Gender" value="" class="form-control" required='true'>
<option value="">Select Gender</option>
<option value="Male">Male</option>
<option value="Female">Female</option>
<option value="Decide Not Say">Decide Not Say</option>
</select>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Date of Birth: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" class="form-control fc-datepicker" placeholder="yyyy-mm-dd" data-date-format="yyyy-mm-dd" id="hdob" name="DOB">
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Email Address: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="email" name="Email" value="" class="form-control" required='true'>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Contact Address: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<textarea type="file" name="ContactAddress" value="" required="true" class="form-control"></textarea>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Qualification: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<select type="text" name="Qualification" value="" class="form-control" required='true'>
<option value="">Select Qualification</option>
<option value="PhD">PhD</option>
<option value="MSc">MSc</option>
<option value="First Degree">First Degree</option>
<option value="NCE/ND">NCE/ND</option>
<option value="SSCE">SSCE</option>
</select>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Course of Study: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" name="Course" value="" class="form-control" required='true'>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Last School Attended: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" name="LastSchoolAttended" value="" class="form-control" required='true'>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Duration(year-year): <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" name="Period" value="" class="form-control" required='true'>
</div>
</div>
<h3 class="card-body-title" style="padding-top: 20px;color: red">2 Employment Details</h3>
<hr />
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Current Employer: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" name="CurrentEmployment" value="" class="form-control" required='true'>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Current Date of Employment: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" name="CurrentDate" value="" class="form-control" required='true'>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Current Employer Address: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" name="CurrentAddress" value="" class="form-control" required='true'>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Current Position: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" name="CurrentPosition" value="" class="form-control" required='true'>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Current Employer Phone Number: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" name="CurrentEmployerPhone" value="" required="true" class="form-control" maxlength="11">
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Previous Employer: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" name="PreviousEmployment" value="" class="form-control" required='true'>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Duration of Previous Employment (year-year): <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" name="PreviousDate" value="" class="form-control" required='true'>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Previous Employer Address: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" name="PreviousAddress" value="" class="form-control" required='true'>
</div>
</div>
<div class="row mg-t-20">
<label class="col-sm-4 form-control-label">Previous Position: <span class="tx-danger">*</span></label>
<div class="col-sm-8 mg-t-10 mg-sm-t-0">
<input type="text" name="PreviousJobTitle" value="" class="form-control" required='true'>
</div>
</div>