将Unix时间戳转换为MySQL DATETIME

I w*_*ce. 5 php mysql sql sql-insert

这听起来很傻,但对于我的生活,我无法理解.我尝试了一切.

问题是我无法弄清楚如何将我的日期字符串放入我的MySQL表中......我首先要转换为Unix来解释输入格式的变化.

$_POST['date'] 是这种格式:19-1-2013 4:43:32

$datestr= strtotime($_POST['date']);
    echo $datestr;
    $sql = "INSERT INTO `calendar` (`date`, `title`, `event`) VALUES ('FROM_UNIXTIME(".$datestr.")', '".mysql_real_escape_string($_POST['title'])."', '".mysql_real_escape_string($_POST['desc'])."')";
    $query = mysql_query($sql);
Run Code Online (Sandbox Code Playgroud)

这是我尝试过的最新内容,我仍然在DATETIME字段中获得全零.

拜托,我做错了什么?

Joh*_*Woo 12

删除单引号,FROM_UNIXTIME因为它会使它成为一个值.例如

$sql = "INSERT INTO `calendar` (`date`, `title`, `event`) VALUES (FROM_UNIXTIME(".$datestr."), '".mysql_real_escape_string($_POST['title'])."', '".mysql_real_escape_string($_POST['desc'])."')";
Run Code Online (Sandbox Code Playgroud)

作为旁注,您的查询容易受到攻击SQL Injection,请参阅下面的文章以了解如何保护它