Php 如何使用jQuery将日期插入mysql表?
我正在使用jQuery中的datetimepicker,当我从datetimepicker中选择一个日期时,它会将其设置为以下格式: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
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的事。。它保存所有的零