使用php的Mysql日期时间项
我无法将使用php的Mysql日期时间项,php,mysql,sql,Php,Mysql,Sql,我无法将now()输入到具有日期戳的MySQL列中选项: $sth = mysql_query("INSERT INTO data (id, user_id,data,datetime,desc) ". "VALUES ('', '$userid','$data',now(),'$desc')",$link) or die("Query failed "); MySQL: 4 datetime timestamp
now()
输入到具有日期戳的MySQL列中
选项:
$sth = mysql_query("INSERT INTO data (id, user_id,data,datetime,desc) ".
"VALUES ('', '$userid','$data',now(),'$desc')",$link)
or die("Query failed ");
MySQL:
4 datetime timestamp No CURRENT_TIMESTAMP
输出:
You have an error in your SQL syntax; check the manual that corresponds to
your MySQL server version for the right syntax to use near
'desc) VALUES ('', '','',NOW(),'')'
at line 1
删除
now()
的引号,因为它是一个MYSQL函数。而且它不是now(),而是now()
我想问题是因为
desc
和datetime
是保留字,如果id
是AUTOINCREMENT
可以从值中删除。试试这个:
$sth = mysql_query("INSERT INTO data (user_id, `data`,`datetime`,`desc`) ".
"VALUES ('$userid','$data',NOW(),'$desc')",$link)
or die(mysql_error());
请记住,mysql
扩展已被弃用,请检查mysqli或PDO
编辑:添加了一些错误检测
NOW()
是一个MySQL函数。删除它周围的引号。是的,将其大写为NOW()而不是'NOW()'mysql扩展已被弃用。您的SQL语法中有错误;请查看与MySQL服务器版本对应的手册,以了解可在“请粘贴数据库的表架构”附近使用的正确语法。您可以通过PHPMyAdmin->Export获得它。这是因为我将“desc”更改为description,并且它的okaydatetime也是一个保留字,我不确定数据
,这就是为什么我也要逃避它。如果你尝试了一些事情但没有成功,请更新你的问题
$sth = mysql_query("INSERT INTO data (user_id, `data`,`datetime`,`desc`) ".
"VALUES ('$userid','$data',NOW(),'$desc')",$link)
or die(mysql_error());