php - 向日期添加月份并插入数据库

标签 php mysql

我正在尝试将 X 个月添加到从我的数据库中获取的日期

$sql_batch = "SELECT * FROM mgm_subscription WHERE status = '1'"
$query_batch = mysql_query($sql_batch);
$row_batch = mysql_fetch_array($query_batch);

$addMonth = 3;
$startDate = $row_batch['start_month'];
$endDate = strtotime('+'.$addMonth.' month', $startMonth);  // add number of days from form
$endDate = date('m/d/y H:i:s', $endDate );  

$sql_date = "INSERT INTO user_subscription (user_id, start_month, end_month, sub_status) VALUES ('".$usercode2."','".$startDate."','".$endDate."', '')";
$query_date = mysql_query($sql_date);

NULL 被插入到 end_month 中。 start_month和end_month是mysql中的DATE类型

我该如何解决这个问题? tq。

最佳答案

如果我理解你的问题,你的$endDate应该是

$endDate = date('Y-m-d', strtotime($startDate.' +'.$addMonth.' months'));  

所以这相当于:

$endDate = $startDate + 3 months /* in Y-m-d format */

编辑:刚刚看到您的列数据类型是日期。这意味着您无法在日期中存储时间戳。它必须是 Y-m-d 格式,因为这是受支持的有效 mysql 格式。

关于php - 向日期添加月份并插入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23925248/

相关文章:

mysql - 如果存在 id 重复项,则选择所有行,然后选择具有特定类型的(2 行)

php 如果 foreach 语句有效,但不显示消息

php - 我如何按日期对查询进行排序和分组,并将它们分组到 Laravel 中的数组中

php - 有一个 MySQL 数据库,PHP 表单不工作,但连接成功

mysql - #1044 - 拒绝用户 'id9605813_band' @'%' 访问数据库 'information_schema'

php - 在 PHP 和 MySQL 中上传个人资料图片 : What am I doing wrong?

php - jquery datatables mysql php DataTables警告(表ID ='displayData'): DataTables warning: JSON data from could not be parsed

php - 如何修改php源代码并重新编译?

javascript - 从用户生成的 li 列表中的 ahref 链接创建数组

javascript - 使用 AJAX 将头像上传到服务器