我正在尝试编写一个代码,用于在mysql表中注册用户的访问数据。这段代码运作良好一个星期左右(打印2012-07-12,但是然后它开始在日期列中生成0000-00-00)。
$date_now = date("m.d.y"); // gets date
if (empty($username)) {} else (mysql_query ("INSERT INTO new_visit_data (user_id, date, exercise, lesson, username ) VALUES ('$user_id','$date_now', '' , 'yes', '$username' ) ON DUPLICATE KEY UPDATE lesson='yes'; "));
我做错了什么?谢谢!
答案 0 :(得分:6)
如果日期确实是“日期”类型的列,则应为
$date_now = date("Y-m-d");
答案 1 :(得分:4)
如果列exercise
的数据类型为DATETIME
,请使用:
INSERT INTO new_visit_data (user_id, date, exercise, lesson, username ) VALUES ('$user_id', NOW(), '' , 'yes', '$username' ) ON DUPLICATE KEY UPDATE lesson='yes';
答案 2 :(得分:3)
这里是日期格式
$today = date("F j, Y, g:i a"); // March 10, 2001, 5:16 pm
$today = date("m.d.y"); // 03.10.01
$today = date("j, n, Y"); // 10, 3, 2001
$today = date("Ymd"); // 20010310
$today = date('h-i-s, j-m-y, it is w Day'); // 05-16-18, 10-03-01, 1631 1618 6Satpm01
$today = date('\i\t \i\s \t\h\e jS \d\a\y.'); // it is the 10th day.
$today = date("D M j G:i:s T Y"); // Sat Mar 10 17:16:18 MST 2001
$today = date('H:m:s \m \i\s\ \m\o\n\t\h'); // 17:03:18 m is month
$today = date("H:i:s"); // 17:16:18
$today = date("Y-m-d H:i:s"); // 2001-03-10 17:16:18 (the MySQL DATETIME format)