首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从PHP向MySql插入日期和时间值

从PHP向MySql插入日期和时间值
EN

Stack Overflow用户
提问于 2010-06-01 11:54:34
回答 4查看 2.8K关注 0票数 1

您好,我想以与MySQL DateTime格式兼容的格式将日期和时间发送到mysql数据库,格式为: 0000-00-00 00:00:00 :00 ...

我使用下面的代码从PHP命令中获取日期和时间:

代码语言:javascript
复制
   $insert = "INSERT INTO sms (ref, texto, fecha)
   VALUES ('".$_POST['usuario']."', '".$_POST['sms']."', '".date(DATE_ATOM, mktime(0, 0, 0, 7, 1, 2000))."')";
   $add_member = mysql_query($insert);

我真的很想这样做,但是使用MySQL命令,我的意思是,使用来自mysql服务器的日期和时间。谢谢

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-06-01 11:56:04

在插入记录INSERT INTO table (date) VALUES (NOW())时使用NOW()

对于您的代码:

代码语言:javascript
复制
$insert = "INSERT INTO sms (ref, texto, fecha)
VALUES ('".$_POST['usuario']."', '".$_POST['sms']."', NOW() )";
$add_member = mysql_query($insert);
票数 1
EN

Stack Overflow用户

发布于 2010-06-01 16:03:38

MySQL只允许有限数量的日期格式作为输入。来自MySQL manual

仅支持以下各节中介绍的格式。希望您提供合法的值。如果使用其他格式的值,可能会出现不可预知的结果。

您提供的日期格式为Y-m-d\TH:i:sP ( DATE_ATOM常量的值),这是MySQL不支持的(尽管它可能会被解析并正确存储,具体取决于当前的SQL模式)。

您应该改用date('Y-m-d H:i:s', ...)

另外,是的,你应该保护你的代码不受SQL注入的影响。

票数 1
EN

Stack Overflow用户

发布于 2010-06-01 16:22:32

代码语言:javascript
复制
$date = date("Y-m-d H:i:s", mktime(0, 0, 0, 7, 1, 2000));

$usuario = mysql_real_escape_string($_POST['usuario']);
$sms = mysql_real_escape_string($_POST['sms']);
$date = mysql_real_escape_string($date);

$sql = "INSERT INTO sms (ref, texto, fecha) VALUES ('$usuario', '$sms', '$date')";
mysql_query($sql) or trigger_error(mysql_error().$sql);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2947184

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档