Php 从datetimepicker的html输入获取时间值
我已经使用internet上的datetime_选择器为html文本输入创建了一个值。现在的问题是,我如何将值区分为明确的日期值和明确的时间值。使用日期选择器,我可以得到如下文本输入: 2013/12/29 12:52 可以将此值分别插入数据库中的日期和时间列中。如果可以的话,代码应该是什么样子的,通常我使用下面的代码获得html文本输入Php 从datetimepicker的html输入获取时间值,php,html,Php,Html,我已经使用internet上的datetime_选择器为html文本输入创建了一个值。现在的问题是,我如何将值区分为明确的日期值和明确的时间值。使用日期选择器,我可以得到如下文本输入: 2013/12/29 12:52 可以将此值分别插入数据库中的日期和时间列中。如果可以的话,代码应该是什么样子的,通常我使用下面的代码获得html文本输入 $id = pg_escape_string($_POST['ID']); 但这将得到全部价值。由于我刚刚开始学习html和php,我希望获得更详细的编码,
$id = pg_escape_string($_POST['ID']);
但这将得到全部价值。由于我刚刚开始学习html和php,我希望获得更详细的编码,提前感谢您的帮助。您可以简化从DatePicker获得的文本
$valuefromdatepicker='2013/12/29 12:52';
$datetimeval= explode(' ',$valuefromdatepicker);
$date = $datetimeval[0]; // holds 2013/12/29
$time = $datetimeval[1]; // holds 12:52
为了约会
echo date('Y-m-d',strtotime('2013/12/29 12:52'));
还有时间
echo date('H:i',strtotime('2013/12/29 12:52'));
请参见和日期根据您的示例,我不确定问题是否为:
- 您的数据库中有一个日期列,但当您尝试插入带有日期和时间组合的值时,只有日期存储在数据库中,但时间丢失
- 您有一个日期列和一个时间列,并且正在尝试拆分输入字符串以隔离要保存到时间列的时间值
- 插入日期时间字符串,如
,只存储日期,但删除时间。您希望日期和时间都存储在该列中2013/12/29 12:52
ALTER TABLE foo
ALTER COLUMN foo_timestamp SET DATA TYPE timestamp;
- 您希望在一列中存储日期值,在另一列中存储时间值,但不确定如何分隔插入的时间值
// assuming that the format from picker is always : 2013/05/01 01:05
$date = DateTime::createFromFormat('Y/m/d H:i', $_POST['datetime']);
$iso_date = $date->format(ISO8601); // returns '2013-05-01T01:05:00'
// assuming that the format from picker is always : 2013/05/01 01:05
$date = DateTime::createFromFormat('Y/m/d H:i', $_POST['datetime']);
$date_string = $date->format('Y-m-d'); // returns '2013-05-01';
$time_string = $date->format('H:i'); // returns '01:05';
对于ISO-8601格式的datetime,如果日期列和时间列是单独的列,则可以将其传入,如果要将它们存储在一起,则可以将其传入单个时间戳列
还可以使用DateTime类将日期和时间字符串作为单独的变量获取,如下所示:
// assuming that the format from picker is always : 2013/05/01 01:05
$date = DateTime::createFromFormat('Y/m/d H:i', $_POST['datetime']);
$iso_date = $date->format(ISO8601); // returns '2013-05-01T01:05:00'
// assuming that the format from picker is always : 2013/05/01 01:05
$date = DateTime::createFromFormat('Y/m/d H:i', $_POST['datetime']);
$date_string = $date->format('Y-m-d'); // returns '2013-05-01';
$time_string = $date->format('H:i'); // returns '01:05';
试试这个:
您是在询问如何拆分还是如何在数据库中存储?请使用
date($Y:m:d',$date)
函数。@Anthony如何拆分它以便在数据库中存储..因为如果我使用$date=pg_escape_字符串($\u POST['datetime']);获取日期对我来说很好,但我不知道如何获取滞后时间var\u dump($date)
返回什么?老实说,很不清楚你的目标是什么或根本问题。问题是您希望单独存储日期和时间,还是在尝试将datetime字符串插入数据库时只保存日期?您是否需要知道如何在数据库中创建列,或者如何解析字符串,以便将日期值和时间值存储为两个不同的变量?答案/解决方案多种多样,具体取决于您实际要做的事情和遇到的障碍。如果可以,您会将日期和时间作为一个值存储在数据库中吗?我必须输入datepicker中的值?因为我使用了提交按钮,所以我必须在另一个php页面上获取这些值,所以这段代码是用于同一页面的?我确实在我的问题中添加了一些注释,您能帮我看看吗?非常感谢