javascript - 输入类型日期以设置从数据库中获取的日期
问题描述
我的数据库用户由名称、密码、dob 等属性组成。 数据类型用于存储日期是日期。更新时,我曾经像下面这样获取
$query="select * from user where email='$user'";
$res=mysqli_query($conn,$query);
$fet=mysqli_fetch_array($res);
<input type="date" id="dob" name="dob" value="<?php if($fet['dob']==00-00-0000){ }else{ echo date($fet['dob']);} ?>">
我想要从数据库中获取到上述输入类型日期的日期。
解决方案
编辑:
正如我在回答的评论中所理解的那样,您将DATETIME
值存储在数据库中,而不是DATE
值。以下是如何使用类从日期时间格式获取日期格式:DateTime
$dob = new DateTime($fet['dob']);
$formatted = $dob->format('Y-m-d');
要在您的中以简短的语法输出它<input>
:
<?php
$dob = (new DateTime($fet['dob']))->format('Y-m-d');
?>
<input type="date" id="dob" name="dob" value="<?php echo $dob; ?>">
问题:
An<input type="date">
应该具有YYYY-MM-DD
格式中的值。
该date()
函数需要格式和时间戳。
您没有引用该00-00-0000
值。
您不需要格式化日期字符串,因为它的格式适合您的输入:
<input type="date" id="dob" name="dob" value="<?php echo $fet['dob']; ?>">
如果您需要在 PHP 中操作日期,我会推荐该DateTime
课程。
推荐阅读
- reactjs - React: Beginner friendly design pattern for React, MVVM or Redux?
- html - 填充周围的空白空间并在响应式侧边栏上显示图像
- arrays - 如何改进更大数据集的数组公式?
- eclipse - 如何自定义 Eclipse 使其看起来像这样?
- java - 有没有办法用 postgres 副本保留制表符空间?
- aes - 如何为 ClearKey DRM 生成十六进制字符串
- c# - 对 C# 的 C++ 回调:未知模块中发生“System.ExecutionEngineException”类型的未处理异常
- java - springboot应用程序中如何全局处理数据库连接异常?
- sql - SQL:开始日期 > 上一年 10 月 1 日
- python - 使用 Flask 和 Pandas 将响应数据流式传输到 Excel