Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用日期格式搜索一段时间内的数据_Php_Mysql - Fatal编程技术网

Php 使用日期格式搜索一段时间内的数据

Php 使用日期格式搜索一段时间内的数据,php,mysql,Php,Mysql,我想从MySQL表“inverter”中搜索特定时间段的数据。在该页面中,我使用了一个java日期选择器,它以mm/dd/yyyy格式返回一个值。在数据库表中,日期以yyyy-mm-dd-hh-mm-ss格式存储 我使用了以下查询: $query= ("SELECT * FROM inverter WHERE id= '".$_POST['mac']."' AND DATE_FORMAT(cur_timestamp,\"%m/%d/%Y\" ) BETWEEN '".$_POST['select

我想从MySQL表“inverter”中搜索特定时间段的数据。在该页面中,我使用了一个java日期选择器,它以
mm/dd/yyyy
格式返回一个值。在数据库表中,日期以
yyyy-mm-dd-hh-mm-ss
格式存储

我使用了以下查询:

$query= ("SELECT * FROM inverter WHERE id= '".$_POST['mac']."' AND DATE_FORMAT(cur_timestamp,\"%m/%d/%Y\" ) BETWEEN '".$_POST['select1']."' AND '".$_POST['select2']."'"); 
其中
select1
select2
是两个
日期选择器。
代码在一个日期内运行良好。它还显示输入日期

在页面上显示编译和查询后,输出为:

SELECT * FROM inverter WHERE machine_id= '1111' AND DATE_FORMAT(cur_timestamp,"%m/%d/%Y" ) BETWEEN '11/01/2013' AND '01/06/2014'

请帮忙

我可以为您提供一种可能的方法,只是因为我不确定哪种方法适合您

首先,尝试以下方法:

$query= ("SELECT * FROM inverter WHERE id= '".$_POST['mac']."' AND DATE_FORMAT(cur_timestamp,\"%m/%d/%Y\" ) > '".$_POST['select1']."' AND  DATE_FORMAT(cur_timestamp,\"%m/%d/%Y\" ) < '".$_POST['select2']."'");
$date1 = date('Y-m-d',strtotime($_POST['select1']));
$date2 = date('Y-m-d',strtotime($_POST['select2']));

$query= ("SELECT * FROM inverter WHERE id= '".$_POST['mac']."' AND DATE(cur_timestamp) > '".$date1."' AND DATE(cur_timestamp) < '".$date2."'");
$query=(“SELECT*FROM inverter,其中id=”)“$\u POST['mac']”和日期格式(cur\u时间戳,\%m/%d/%Y\”>”)““$\u POST['select1']”和日期格式(cur\u时间戳,\%m/%d/%Y\”<”)“$\u POST['select2']”;
第二个是试试这个:

$query= ("SELECT * FROM inverter WHERE id= '".$_POST['mac']."' AND DATE_FORMAT(cur_timestamp,\"%m/%d/%Y\" ) > '".$_POST['select1']."' AND  DATE_FORMAT(cur_timestamp,\"%m/%d/%Y\" ) < '".$_POST['select2']."'");
$date1 = date('Y-m-d',strtotime($_POST['select1']));
$date2 = date('Y-m-d',strtotime($_POST['select2']));

$query= ("SELECT * FROM inverter WHERE id= '".$_POST['mac']."' AND DATE(cur_timestamp) > '".$date1."' AND DATE(cur_timestamp) < '".$date2."'");
$date1=date($Y-m-d',strottime($\u POST['select1']);
$date2=日期($Y-m-d',标准时间($U POST['select2']);
$query=(“从逆变器中选择*,其中id=”、“$\u POST['mac']”和日期(cur\u时间戳)>”、“$date1.”和日期(cur\u时间戳)<”、“$date2.”);

您面临的错误或问题是什么?如果有两个错误或问题,则不会提取数据datepickers@BrokenHeartღ 您真的不知道吗?很明显,您必须修改选择器以返回适当的值。”2013-01-11','2014-01-06'. 另外,在提供样本日期供其他人审查时,一个有用的提示是将这些样本的日期限制在每月12日之后。否则就会出现混乱。如果日期\格式适用于单个日期选择器,为什么它不适用于两个日期选择器?整个代码中唯一的区别就是这个查询。