为什么它不显示当前时区?

时间:2017-05-14 10:13:40

标签: php mysql sql mysqli phpmyadmin

我正在尝试在查询中添加参数,该参数将印度时区传递给mysql数据库服务器。但是当我传递此查询时,它在我的表中显示 0000-00-00 00:00:00 。 我正在使用hostinger php我的管理数据库服务器。 请帮我解决这个问题。

<?php


include 'confi.php';

 date_default_timezone_set('Indian/Maldives');

    $email = isset($_POST['email']) ? mysqli_real_escape_string($conn,$_POST['email']) : "";
    $today = date("d/m/Y h:i:s A");

    $sql ="INSERT INTO `i_order` (`ID`, `email`,`date`) VALUES (NULL, '$email', '$today');"; 

    $qur = mysqli_query($conn,$sql);
    if($qur){
        $json = array("status" => 1, "msg" => "success!");
    }else{
        $json = array("status" => 0, "msg" => "error!");
    }

@mysqli_close($conn);

/* Output header */
    header('Content-type: application/json');
    echo json_encode($json);


?>

2 个答案:

答案 0 :(得分:1)

要将日期存储到MySQL,它需要采用特定的格式,即

YYYY-MM-DD HH:MM:SS

因此,如果您从

更改格式
$today = date("d/m/Y h:i:s A");

$today = date("Y-m-d h:i:s");

日期将正确存储。

如果您将24小时的时间存储到数据库,AM和PM部分无关紧要,您可以添加,如果您向用户提供时间,当您从数据库中读回数据时

答案 1 :(得分:-1)

<?php 

 date_default_timezone_set('Indian/Maldives');
 //echo $today = date('m-d-Y h:i:s A');

?>