I want to insert data from website but my website still can’t insert to database mysql. whats wrong with my php code?
this is the html file
<form class="sign-in-up-form" action="book.inc.php" method="POST">
<p class="section-title">Booking Form</p>
<input class="input-field" type="text" id="name" name="UserName" placeholder="Full name" required>
<input class="input-field" type="tel" id="contact" name="UserContact" placeholder="Contact Number" required>
<input class="input-field" type="email" id="email" name="UserEmail" placeholder="Email" required>
<input id="datetime-book" class="input-field book-field" type="datetime-local" id="date" name="aptDateTime" required>
<select class="input-field book-field" name="artistName" id="selArtist" required>
<option id="select-placeholder" value="">Please choose an artist</option>
<option value="Aurelius">Aurelius</option>
<option value="Crocks">Crocks</option>
</select>
<textarea id="textarea-tattoo-idea" name="aptComment" class="input-field" placeholder="Describe your tattoo idea here..."></textarea>
<input class="submit-btn" type="submit" name="submit" value="book">
</form>
this is the php file
<?php
session_start();
// connect to database
$con = mysqli_connect("localhost","root","","yellowstudios");
if (empty($_POST["UserName"])) {
die("Name is required");
}
if (!filter_var($_POST["UserEmail"], FILTER_VALIDATE_EMAIL)) {
die("Valid email is required");
}
// to collect data
if(isset($_POST['submit'])) {
$UserName = $_POST['UserName'];
$UserContact = $_POST['UserContact'];
$UserEmail = $_POST['UserEmail'];
$aptDateTime = $_POST['aptDateTime'];
$artistName = $_POST['artistName'];
$aptComment = $_POST['aptComment'];
// will insert to DB
$query = "INSERT INTO bookDB (UserName, UserContact, UserEmail, aptDateTime, artistName, aptComment, aptStat) VALUES ('$UserName', '$UserContact', '$UserEmail', $aptDateTime','$artistName', '$aptComment', ?)";
$query_run = mysqli_query($con, $query);
if($query_run)
{
// will execute if booking is successful, and will go to next page
$_SESSION['status'] = "Appointment inserted successfully!";
header("Location: book.output.php");
}
else
{
// will execute if booking is not successful, and will go to next page
$_SESSION['status'] = "Appointment not inserted!";
header("Location: book.output.php");
}
}
I looked for typos and everything, but it won’t insert data to database. I also double checked everything.