从PHP插入DATETIME到SQL

时间:2017-03-31 18:26:25

标签: php mysql datetime

我似乎无法将日期时间存储到数据库中。

public function add_post($username, $content) {
    date_default_timezone_set("Asia/Manila");
    $date = date("m/d/Y h:i A");
    $final = strtotime($date);
    $time_posted = date("m/d/Y h:i A", $final);

    $sql =" INSERT INTO POSTS (username, post_content, time_posted)
            VALUES ('$username','$content','$time_posted')";

        return $this->db->query($sql);
}

在数据库中看起来像这样 0000-00-00 00:00:00

这是我的帖子表:Posts table

3 个答案:

答案 0 :(得分:2)

日期时间字段的格式应为:

$time_posted = date("Y-m-d H:i:s", $final);

答案 1 :(得分:1)

为您提供帮助,

public function add_post($username, $content) {
   date_default_timezone_set("Asia/Manila");
   $date = date("m/d/Y h:i A");
   $final = strtotime($date);
   $time_posted = date("Y-m-d H:i:s", $final);

   $sql =" INSERT INTO POSTS (username, post_content, time_posted)
        VALUES ('$username','$content','$time_posted')";

    return $this->db->query($sql);
}

答案 2 :(得分:1)

MySQL时间戳有一个固定的日期时间输入模式,即" Y-m-d H:i:s",如果你想将日期时间插入数据库,然后将模式转换为上面提到的模式然后尝试。它会工作