php时间存入数据库中,php输入时间以unix时间戳形式存入数据库中,存入失败.急,求解,大谢!...

本文讨论了PHP中尝试将形如'1990-09-0912:00:20'的时间字符串插入数据库时遇到的问题,重点在于时间格式转换和数据库字段类型。作者分享了可能的原因及解决方案,包括使用`strtotime`函数将时间戳转换为数据库接受的格式。
摘要由CSDN通过智能技术生成

用户提问

这是在一个页面里的相关php代码

value="<?php echo $product_code; ?>"/>

时间段:

echo '';

$session = session_id();

$query = 'SELECT

qty, starttime, FROM_UNIXTIME(endtime)

FROM

ecomm_temp_cart

WHERE

session = "' . $session . '" AND

product_code = "' . $product_code . '"';

$result = mysql_query($query, $db)or die(mysql_error($db));

if (mysql_num_rows($result) > 0) {

$row = mysql_fetch_assoc($result);

extract($row);

} else {

$qty = 0;

$starttime = 2013;

$endtime = "2013-01-01 12:00:00";

}

mysql_free_result($result);

echo '';

echo '';

echo '';

这是action页面的相关代码

$qty = (isset($_POST['qty']) && ctype_digit($_POST['qty'])) ? $_POST['qty'] : 0;

$starttime = (isset($_POST['starttime']) && ctype_digit($_POST['starttime'])) ? $_POST['starttime'] : 0;

$endtime = (isset($_POST['endtime']) && ctype_digit($_POST['endtime'])) ? $_POST['endtime'] : 0;

if (!empty($product_code) && $qty > 0) {

$query = 'INSERT INTO ecomm_temp_cart

(session, product_code, starttime, endtime, qty)

VALUES

("' . $session . '", "' .

mysql_real_escape_string($product_code, $db) . '", ' . $starttime . ', UNIX_TIMESTAMP("' . $endtime . '"), ' . $qty . ')';

mysql_query($query, $db) or die(mysql_error($db));

}

header('Location: ' . $redirect);

exit();

break;

starttime和endtime其他设置一样

为测试,我输入的starttime和endtime是两种形式,starttime是普通的数字串,传值成功,存入数据库成功。为什么endtime,"1990-09-09 12:00:20"这种,传不了,而且用unix_timestamp存不进去呢?

求解啊~~谢谢谢~

推荐答案

是传不了,还是不能存入数据库呢?

是不是数据库设计的时间字段是int型的!你传入的数据是string形式的有关呢?

你最好把sql语句echo出来,然后直接在数据库运行一下!看看什么地方报错,也可以!

辅助答案

用户:蹲墙角画圈

2017年11月19日

用TIMESTAMP这个类型.存的是时间戳.转换下.虽然能存储的年份少些.到 203几年...好像是2038年.但是一个是方便.另外一个是节省空间

用户:间隔年gap

2017年12月19日

建议你用$endtime = strtotime($endtime);在php端转为时间戳再存进去

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值