如何在单个行中将日期范围插入 mysql [英] How to insert date range to mysql in individual rows

查看:52
本文介绍了如何在单个行中将日期范围插入 mysql的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我打算在我的 MySQL 中插入多行我的代码是为每个日期插入一行,我有一个日期开始和日期结束,所以对于每个日期我想插入 1 行请帮助我使用 PHP MySQL 插入我的 Wamp 服务器

I'm, planning to insert many row in my MySQL my code is to insert a row for each date and i have a date-start and date-end so for each date i want to insert 1 row please help me with inserting in my Wamp server using Php MySQL

我想在我的 datestart 和 dateend 之间分别插入所有日期,你能帮我吗,谢谢

i want to insert all the dates between my datestart and dateend individually can you help me with this thanks

推荐答案

在mysql中一次插入多行需要在第一组数据后加逗号

to insert multiple rows at one time in mysql you need to add a comma after your first set of data

<?php
$con=mysqli_connect("example.com","mysqluser","mysqlpw","my_db");
if (mysqli_connect_errno())
  {
  echo "Failed to connect: " . mysqli_connect_error();
  }
mysqli_query($con,"INSERT INTO tablename(`uid`, `firstname`, `lastname`) VALUES ('15', 'James', 'thompson'),('25', 'Michael', 'Bagwell')");

mysqli_close($con); 
?> 

对于每个额外的行添加另一个 ,('id', 'first', 'last')

for each additional row add another ,('id', 'first', 'last')

由于您的请求发生了很大变化,这里更新了日期

since your request has quite changed here is an update for the dates

<?php
$startdate = strtotime($_POST["startdate"]);
$enddate = strtotime($_POST["enddate"]);
$sdate = date('Y-m-d',$startdate);
$edate = date('Y-m-d',$enddate);
$datediff = $sdate - $edate;
$countdays = floor($datediff/(60*60*24));
$query = "INSERT INTO tablename(`incdate`, `data1`, `data2`) VALUES ('" . $sdate . "', 'data', 'data')"

for ($i = 1; $i < $countdays; $i++) {
    $sdate->add(new DateInterval('P1D'));
    $query .= "('" . $sdate . "', 'data', 'data')"
}

$con=mysqli_connect("example.com","peter","abc123","my_db");
if (mysqli_connect_errno())
  {
  echo "Failed to connect: " . mysqli_connect_error();
  }
mysqli_query($con, $query);

mysqli_close($con); 
?> 

未测试但它应该可以工作,它会发现您输入的开始日期和结束日期之间的差异(以天为单位),然后根据需要将每一天添加到查询中 - 一旦完成,它就会运行查询

not tested but it should work, it finds the difference in your inputted start and end date in days then adds each day to the query as appropriate - once completed it runs the query

这篇关于如何在单个行中将日期范围插入 mysql的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆