Php date()返回0000-00-00

Php date()返回0000-00-00,php,mysql,Php,Mysql,我试图编写一个代码,在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 ('$us

我试图编写一个代码,在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'; "));

我做错了什么?谢谢

如果date确实是“date”类型的列,则应该是

$date_now = date("Y-m-d");

如果列
练习
的数据类型为
日期时间
,则使用:

INSERT INTO new_visit_data    (user_id, date, exercise, lesson, username ) VALUES ('$user_id', NOW(), '' , 'yes', '$username' ) ON DUPLICATE KEY UPDATE lesson='yes'; 
以下是日期格式

    $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)

这是日期时间列的错误格式。显示表格的结构请阅读可能会影响您获得高质量答案的能力的内容。@zerkms有时,作者在未注意到的情况下更改了某些内容。尤其是当他不太了解这个主题的时候。所以,我宁愿把它看作是一个错误,而不是一个谎言。善待他人!你确定?我不这么认为。我想这是对的不Dan博士没有必要用那种格式来记录日期。今日回音日期(“m.d.y”);将输出12.17.12非常感谢!!!这使我的代码工作:)对不起,我不知道如何“接受答案”好的,好的,很抱歉,伙计们,我不知道!