Php 如何使用jQuery将日期插入mysql表?

Php 如何使用jQuery将日期插入mysql表?,php,jquery,mysql,datetime,Php,Jquery,Mysql,Datetime,我正在使用jQuery中的datetimepicker,当我从datetimepicker中选择一个日期时,它会将其设置为以下格式: 11/10/2011 14:02 现在,当我尝试像这样将它插入到我的sql表中时 INSERT INTO MYTABLE (date, name) values ('$_POST[datepicker]','$_POST[name]') 上面说日期的格式不正确 有人能帮我确定如何格式化这样的日期,以便datetime()字段接受它吗 多谢各位 Yo

我正在使用jQuery中的datetimepicker,当我从datetimepicker中选择一个日期时,它会将其设置为以下格式:

  11/10/2011 14:02
现在,当我尝试像这样将它插入到我的sql表中时

INSERT INTO MYTABLE (date, name) values ('$_POST[datepicker]','$_POST[name]')
上面说日期的格式不正确

有人能帮我确定如何格式化这样的日期,以便datetime()字段接受它吗

多谢各位

    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 '14:33:00,1,2,'Y')' at line 2

        $datetosave = date("Y-m-d H:i:s", strtotime($_POST[date]));

$insert_q = "INSERT INTO reservations (res_date, res_numofseats, user_id, rsvp)
                     VALUES ($datetosave,$_POST[cars],2,'Y')";

使用
YYYY-MM-DD HH:MM:SS
格式,例如:
2011-11-10 14:02

理想情况下,您应该将jQuery插件设置为以正确的格式输出。如果不可能,可以使用PHP的和函数解析日期,将其转换为正确的格式:

echo date('Y-m-d H:i:s', strtotime('11/10/2011 14:02')); 
// prints 2011-11-10 14:02:00

参考:

使用
YYYY-MM-DD HH:MM:SS
格式,例如:
2011-11-10 14:02

理想情况下,您应该将jQuery插件设置为以正确的格式输出。如果不可能,可以使用PHP的和函数解析日期,将其转换为正确的格式:

echo date('Y-m-d H:i:s', strtotime('11/10/2011 14:02')); 
// prints 2011-11-10 14:02:00

参考:

使用PHP的date函数将其转换为MySQL的datetime格式(YYYY-MM-DD HH:I:s)


$mytime=date('Y-m-dh:i:s',strottime('11/10/2011 14:02')

使用PHP的date函数将其转换为MySQL的datetime格式(YYYY-MM-DD HH:I:s)


$mytime=date('Y-m-dh:i:s',strottime('11/10/2011 14:02')

我认为问题在于插入日期前后缺少引号:

$insert_q = "INSERT INTO reservations (res_date, res_numofseats, user_id, rsvp)
VALUES ($datetosave,$_POST[cars],2,'Y')";
为您提供值2011-11-1014:33:00,1,2,'Y'

在$datetosave周围添加记号

$insert_q = "INSERT INTO reservations (res_date, res_numofseats, user_id, rsvp)
VALUES ('".$datetosave."',$_POST[cars],2,'Y')";

我认为问题在于插入日期前后缺少报价:

$insert_q = "INSERT INTO reservations (res_date, res_numofseats, user_id, rsvp)
VALUES ($datetosave,$_POST[cars],2,'Y')";
为您提供值2011-11-1014:33:00,1,2,'Y'

在$datetosave周围添加记号

$insert_q = "INSERT INTO reservations (res_date, res_numofseats, user_id, rsvp)
VALUES ('".$datetosave."',$_POST[cars],2,'Y')";

这可能超出了您的问题范围,但您的代码容易受到SQL注入攻击。尝试始终使用数据库库的内置转义/引用方法或使用准备好的语句。不确定您使用的是什么库,所以这里的链接很少(我会粘贴更多,但SE不允许我这样做:):


这可能超出了您的问题范围,但您的代码容易受到SQL注入攻击。尝试始终使用数据库库的内置转义/引用方法或使用准备好的语句。不确定您使用的是什么库,所以这里的链接很少(我会粘贴更多,但SE不允许我这样做:):


如果想要一个关于如何修改jquery以使用正确格式的快速示例,那就太过分了?或者如何使用strotime()。@user975582您是否有相关插件的链接?为了扩展这一思想,mysql列的正确格式是
date(“Y-m-dh:i:s”,$unixtime)显示了如何在jQueryi中执行它仍然无法获得它,请参阅上面的代码。如果我取消14:00的事。。它节省了所有的零,如果要一个关于如何修改jquery以使用正确格式的快速示例,那就太多了?或者如何使用strotime()。@user975582您是否有相关插件的链接?为了扩展这一思想,mysql列的正确格式是
date(“Y-m-dh:i:s”,$unixtime)显示了如何在jQueryi中执行它仍然无法获得它,请参阅上面的代码。如果我取消14:00的事。。它保存所有的零