我试图在我的数据库中发布日期值,但每次尝试时,日期都没有到来,但是自动行正在运行。
这是我的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 */;
答案 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())";