为何一定要存在数据库里的是什么样子呢?只要出来是什么样子不就行了嘛。我们一般存进数据库的是用int型的。一般只有生日才用date型的。

解决方案 »

  1.   

    楼上的可能理解错误了,或者是我没有说清楚,我的意思是我的Ttable表里有个date字段,存的什么样子我是可以不管.但我的问题是,我在2008年9月10日执行插入数据库date字段就不应该是2008-09-09,而应该是2008-09-10才对啊!
      

  2.   


    //date_default_timezone_set('PRC'); 
    //这个还真没用过,能不能去掉先?
    $time = date('Y-m-d'); 
    //每次得到后,echo下看看是什么,先别重启
    echo $time;exit;
    $sql="insert into Ttable values('$time')"; 
    mysql_query($sql,$conn); 
      

  3.   

    应该是和数据库服务器的时间设定有关,准确的说应该是locale有关
      

  4.   

    同意4楼  插一条记录,然后看看apache日志  看看那写入的时间。
      

  5.   

    也可能是你的linux服务器的时钟问题:和Windows不同的是,Linux将时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称RTC)时钟两种。系统时间是指当前Linux Kernel中的时钟,而硬件时钟则是主板上由电池供电的那个主板硬件时钟.详细资料可参阅:http://blog.donews.com/jarson/archive/2004/12/04/193258.aspx
      

  6.   

    将后面的H,i,s都打印出来看看,是否是因为时区的问题
      

  7.   

    谢谢,楼上各位的帮忙.我已经找到时间差的原因了,原来虚拟机Linux系统的时间分系统和硬件时间,虚拟机的时间和我现在windows的时间不同步才造成,一个时间差!现在结贴!