如何在PHP中发布数据库中的时间值

时间:2015-06-22 17:37:24

标签: php mysql

我试图在我的数据库中发布日期值,但每次尝试时,日期都没有到来,但是自动行正在运行。

这是我的PHP代码:

<?PHP
mysql_connect("localhost","root","") or die("Could not connect: " . mysql_error());
mysql_select_db("test") or die("Couldn't connect db!");

$times = $_POST['times'];

$id_time = date("d-m-Y",time());

    if($times) {

        $qry = "INSERT INTO test(id_date) VALUES('$id_time')";
        mysql_query($qry);
        header("Location: bbb.php");

    }

?>


<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">

    <input type="submit" name="times" />

</form>
<div><?php echo $id_time; ?></div>

这是我的SQL代码:

CREATE TABLE IF NOT EXISTS `test` (
  `id` int(11) NOT NULL,
  `id_date` date NOT NULL
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=latin1;

--
-- Dumping data for table `test`
--

INSERT INTO `test` (`id`, `id_date`) VALUES
(1, '0000-00-00'),
(2, '0000-00-00'),
(3, '0000-00-00'),


--
-- Indexes for dumped tables
--

--
-- Indexes for table `test`
--
ALTER TABLE `test`
  ADD PRIMARY KEY (`id`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `test`
--
ALTER TABLE `test`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=6;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

3 个答案:

答案 0 :(得分:1)

很简单: 您在此处编码:$id_time = date("d-m-Y",time());

  

请更新内容;

$id_time = date("Y-m-d",time());

你的sql没问题。我希望这会奏效。

答案 1 :(得分:0)

将日期格式更改为 $ id_time = date(“Y-d-m”,time())

答案 2 :(得分:0)

如果你想在sql中使用,请尝试:CURDATE()

像这样:

$qry = "INSERT INTO test(id_date) VALUES(CURDATE())";