我是PHP和MySql的新手。我正在尝试将简单的表单插入MySql数据库。我的机器中有Apache/PHP/MySql。如果这是一个重复的问题,我很抱歉。但我找了很多,都没能找到解决办法。
我有3个html输入字段"name"、"age"、"sex",并将其插入到mysql中,插入查询中有4列。第4列是"日期时间"列。下面是我的结构。
$date = new DateTime();
$date = $date->format('Y-m-d H:i:s');
$sql_query = "insert into demoform (name, age, sex, Created_On)
values('$name', '$age', '$sex', '$date')";
$result = $db_conn->query($sql_query);
但在我插入后,php表单成功提交。但在表中,日期列显示为"0000-00-00 00:00:00"。
有人能帮我吗?我在这里做错了什么?
*问题已随表结构更新。。。
mysql> show tables;
+-------------------+
| Tables_in_myphpdb |
+-------------------+
| demoform |
+-------------------+
1 row in set (0.00 sec)
mysql> describe demoform;
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| name | varchar(255) | YES | | NULL | |
| age | int(11) | YES | | NULL | |
| sex | varchar(255) | YES | | NULL | |
| Created_On | datetime | NO | | NULL | |
+------------+--------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)
使用MySQL NOW()
$sql_query = "insert into demoform (name, age, sex, Created_On)
values('$name', '$age', '$sex', NOW())";
如果您需要当前日期时间,请使用MySQL now()