利用php和mysql存储信息,但是在2这之间的时间类型上不知道怎么弄,总是存不上,代码如下:
<?php
$name=$_POST["name"];
$email=$_POST["email"];
$note=$_POST["note"];
if($name=="") print "请输入用户名!";
else if($email=="") print "请输入邮箱!";
else if ($note=="") print "请输入留言!";
else{
$time=date("Y-n-j h:i:s");
$mylink=mysql_connect("localhost","root","998121021");
mysql_select_db("liuyan",$mylink);
$sql="insert into data
values
 ('$name','$email','$time','$note')";
$result=mysql_query($sql);
echo "<center>感谢你的留言</center>";
}


?>
我在php中定义的时间是“$time=date("Y-n-j h:i:s");”。在mysql中定义的时间是time为datetime类型。
但是存储的时候存不进去,其他地方都没错,问问我在这2者之间应该怎么定义时间的类型,才能使数据存储上,而且存储的时间格式为“xxxx-mm-dd hh:mm:ss”!求指教!

解决方案 »

  1.   

    不是你说的原因
    你可以 
    $result=mysql_query($sql) or die(mysql_error());
    查看出错信息datetime类型 字段可以插入任何合法的日期格式,mysql 会自动完成格式转换又,对于你的应用(插入的时间就是当前时间),可以使用 now() 函数
    即 SQL 中的 '$time' 改为 now()
      

  2.   

    有两个可能。一个可能是你的表如果有自增的id字段,那么应该这样:
    $sql="insert into data values(NULL,'$name','$email','$time','$note')";
    第二个可能是你的表的名称不应该用“data”,因为这个词在mysql里面是个关键字。