我有很多列的数据记录。其中一个栏目是日期&时间。检查sanpshot查看。现在我想运行一个查询来显示从特定日期到特定日期的数据。我在PHP中编写以下代码,但它不起作用,实际上查询不起作用。 当POST中没有任何内容工作时代码中的第二个条件,但反之亦然。
http://i.stack.imgur.com/YNZPg.png
$d1=date("d/m/Y", strtotime($_POST['frm']));
$d2=date("d/m/Y", strtotime($_POST['to']));
$query;
if(empty($_POST['frm'])){
if(empty($_POST['to'])){
$query = mysql_query("select * from ordermng where status = '$xno' ", $link);
}
}
else{
$query = mysql_query("select * from ordermng where (status = '$xno') between date = '$d1%' and date = '$d2%' ", $link);
}
答案 0 :(得分:0)
这是一个EG:
SELECT *
FROM `objects`
WHERE (date_field BETWEEN '2010-01-30 14:15:55' AND '2010-09-29 10:15:55')
使用变量:
SELECT *
FROM `objects`
WHERE (date_field BETWEEN '$d1' AND '$d2')
你应该使用mysqli。
此外,您可能需要将安培转换为24小时。这不难,只是谷歌吧。
答案 1 :(得分:0)
您的查询错误 试试这个
select * from ordermng where (date between '$d1%' and '$d2%') AND status = '$xno'