0

Mysql查询没有按预期保存出生日期,而只是从php注册表中将其保存为0000-00-00,可能是什么问题?

<?php
if(isset($_POST['registration']))
{
    require "connection.php";
    $FirstName = strip_tags($_POST['FirstName']);
    $LastName = strip_tags($_POST['LastName']);
    $Phone = $_POST['Phone'];

    $Month = $_POST['month'];
    $Day = $_POST['day'];
    $Year = $_POST['year'];

    $Date = $Year."-".$Month."-".$Day;
    mysql_query("INSERT INTO users (FirstName,LastName,Phone,DOB)
            VALUES ( '" . $FirstName . "','". $LastName . "',
            '" . $Phone . "','" . $Year . "-" . $Month . "-" . $Day . "')")
            or  die("".mysql_error());
    echo "Successful Registration!";
}
?>       
4

3 回答 3

1

尝试将字符串转换为日期然后执行查询

$date = $Year . "-" . $Month . "-" . $Day;
$dob = date('Y-m-d H:i:s', strtotime($date));
$query="insert into users set FirstName='".$FirstName."',LastName='".$LastName
        ."',Phone='".$Phone."',DOB='".$dob."'";
mysql_query($query)or  die("".mysql_error());
于 2013-09-06T09:09:06.703 回答
0

您需要更改以下代码,

代替

$Month = $_POST['month'];
$Day = $_POST['day'];
$Year = $_POST['year'];

$Month = $_POST['Birthday_Month'];
$Day = $_POST['Birthday_day'];
$Year = $_POST['Birthday_Year'];

因为您之前共享的 html 使用的是字段名称Birthday_Year,依此类推。

于 2013-09-06T08:54:33.340 回答
0

附上这个

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

$Date =$Day ."-".$Month."-".$Year; //note some changes

归功于如何从php表单中收集出生日期并插入mysql?

要开心 :)

于 2013-09-06T08:57:03.297 回答