如何在日历中选择出生日期

时间:2016-01-29 11:40:52

标签: javascript php html5 mysqli

作为出生日期的一个表格输入选择日历前端并存储为mysqli。

我不知道有人说怎么做。因为我是php的新手。

4 个答案:

答案 0 :(得分:0)

<input type="date" name="bday">

尝试这个从用户那里获取出生日期。

然后用PHP转换

<?php
    $dob = date('Y-m-d', strtotime($_POST['bday']));
?>

答案 1 :(得分:0)

您可以使用jQuery UI Datepicker。您可以找到其文档here

让我们先包含并启动插件

 /* include files needed */
<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>

/* initiate plugin */
<script>
  $( "#date" ).datepicker({dateFormat: "yy-mm-dd"});
</script>

选择器将是您的日期input,它看起来像这样:

<input type="text" id="date" name="date">

然后按照您通常的方式存储日期。请记住,日期格式必须为YYYY-MM-DD

答案 2 :(得分:0)

使用

<input type="date" name="birthDate">

$birthDate = $_POST['birthDate'];

使用strtotime,您可以以yyyy-mm-dd格式存储日期。

$newDOB = date('Y-m-d', strtotime($birthDate));

答案 3 :(得分:0)

按照以下四个步骤完成您的需求设置。只需要创建数据库结构。

1。使用altField(http://api.jqueryui.com/datepicker/#option-altField)及其altFormat选项配置Datepicker以支持的格式提供日期:

<input type="hidden" id="actualDate" name="actualDate"/>
$( "selector" ).datepicker({
    altField : "#actualDate"
    altFormat: "yyyy-mm-dd"
});

或者,如果您很高兴用户能够以YYYY-MM-DD格式查看日期,只需设置dateFormat option代替:

$( "selector" ).datepicker({
    dateFormat: "yyyy-mm-dd"
});

2. 使用MySQL的STR_TO_DATE()函数转换字符串:

INSERT INTO user_date VALUES ('', '$name', STR_TO_DATE('$date', '%m/%d/%Y'))

3. 将从jQuery接收的字符串转换为PHP理解为日期的字符串,例如DateTime对象:

$dt = \DateTime::createFromFormat('m/d/Y', $_POST['date']);
and then either:

- 获取合适的格式化字符串:

$date = $dt->format('Y-m-d');

- 获取UNIX时间戳:

$timestamp = $dt->getTimestamp();

which is then passed directly to MySQL's [FROM_UNIXTIME()][3] function:

INSERT INTO user_date VALUES ('', '$name', FROM_UNIXTIME($timestamp))

4. 手动将字符串操作为有效的文字:

$parts = explode('/', $_POST['date']);
$date  = "$parts[2]-$parts[0]-$parts[1]";

希望这对你有所帮助!