Can you help me on what PHP code do I need in order to insert the date to the database from the HTML form. Here is the date format:
HTML FORM:
<form action="insertleave.php" method="post">
<label>Date Filed:</label>
<input type="date" name="datefiled">
<label>Date of Leave:</label>
<input type="date" name="leavedate">
</form>
PHP:
if( $_POST ){
$config = parse_ini_file("phpconfig.ini");
$conn = mysqli_connect($config['host'], $config['username'], $config['password'], $config['dbname']);
if (!$conn){
die("Connection failed: " . mysqli_connect_error());
}
-----CAN YOU PROVIDE ME WHAT THE CODE IS NEEDED HERE -----
if (mysqli_query($conn, $sql)) {
echo "OK!";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
}
mysqli_close($conn);
You have to Format the the time as you defined/ create the field in the database. Because you select the DATE
so the format id Y-m-d
. Replace the table
with your actual table name.
Your Query is:
$datefiled = date("Y-m-d", strtotime($_POST['datefiled']));
$leavedate = date("Y-m-d", strtotime($_POST['leavedate']));
$sql = "INSERT INTO table (DateFiled, LeaveDate) VALUES('$datefiled', '$leavedate')";
Your query will be like this
$sql = "INSERT INTO XXX (DateFiled,LeaveDate) VALUES('".date("Y-m-d", strtotime($_POST['datefiled']))."','".date("Y-m-d", strtotime($_POST['leavedate']))."')";
XXX is the name of your table. It should help you.
In database date is inserted in Y-m-d format so you have to convert your date form before inserting it into database.
To convert date format you have to do something like this
$datefiled = date('Y-m-d', strtotime($_POST['datefiled']));
After that in your insert query simply use that variable and it will be inserted sucesfully.
Note: Use data field as date in you database as it will smooth many of your work in future like displaying dates, displaying no. days left between two dates etc.