如何发布日期输入的内容?

时间:2018-05-18 17:23:17

标签: php html date

我在html中有一个表单,其中包含一个输入类型=日期,以及一个用于在数据库中发布信息的php代码,

php:

if(isset($_POST['Ajouter'])){ // Fetching variables of the form which 
travels in URL
$date = $_POST['date'];



$requete="insert into absences(IdAbs, DateAbs, IdEmp ) values ('1', '$date', 
  '3')";
$query = mysqli_query($db,$requete);

html:

<!Doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body> 
<form action="testabs.php" method="post">
<input id="date" type="date" name="date"> 
<input type="Submit" value="Ajouter" name="Ajouter">*
</form>
</body>
</html>

我不知道如何发布type = date,有人可以帮我这个吗?

1 个答案:

答案 0 :(得分:1)

如果您收到未定义的索引,则可能表示日期未发布。尝试:

if(isset($_POST['date']))
{
    $date= $_POST['date'];
}
else
{
    $date= "2020-02-02";
}

或者如果使用PHP7 +

$date= (isset($_POST['date']) ? $_POST['date'] : "2020-02-02");

如果您在数据库中以2020-02-02结束,则会发布帖子。

要更改格式以适合SQL日期字段:

$inputDate= new dateTime($_POST['date']);
$date= $inputDate->format('Y-m-d');

您仍然需要添加一个合适的检查,以确定日期是否真正存在。