gpt4 book ai didi

php - 从输入(datetime_local)字段进行MYSQL查询

转载 作者:行者123 更新时间:2023-11-29 21:06:05 25 4
gpt4 key购买 nike

我的 mysql 查询有问题:

$req=mysql_query("
SELECT Device_Type, Device_Number, sum(Ok) as Ok, sum(Rejected) as Rejected, sum(QC_Rejected) as QC_Rejected
FROM `Iteration_TotalStats`
where Line_Id = $line and Device_Number IN ($dev) and time > '$datest' and time < '$daten'
");

变量进入“for”循环:

  • $dates=$_POST['date_start'];
  • $daten=$_POST['date_end'];

除了带有变量的时间参数($dates$datee)之外,一切正常。此处输入:

<input type="datetime-local" name="date_start" value="2016-04-19T09:00"></input>
<input type="datetime-local" name="date_end" value="2016-04-19T21:00"></input>

但是当我直接在 mysql 查询中输入此日期和时间格式时,如下所示:

time > '2016-04-19T09:00' and time < '2016-04-19T21:00'

效果很好。我不知道为什么它不适用于变量。请帮忙。

最佳答案

只是为了让您走上正轨,并表明一旦您习惯了 PDO 并不难,我继续将您的代码转换为 PDO:

$qry = $db->prepare(
'SELECT '
. 'Device_Type, '
. 'Device_Number, '
. 'sum(Ok) as Ok, '
. 'sum(Rejected) as Rejected, '
. 'sum(QC_Rejected) as QC_Rejected '
. 'FROM `Iteration_TotalStats` '
. 'WHERE Line_Id = :line '
. 'AND Device_Number IN ($dev) '
. 'AND time > :start '
. 'AND time < :end'
);

$qry->bindParam(':line', $line);
$qry->bindParam(':start', $_POST['date_start']);
$qry->bindParam(':end', $_POST['date_end']);

$result = $qry->execute();

显然,您必须首先实例化该 $db 变量,但这只是一个 PDO 实例,从手册中应该可以清楚地看出:http://php.net/manual/en/pdo.construct.php

请告诉我这是否能解决您的问题。如果有任何不清楚的地方,请随时询问。

关于php - 从输入(datetime_local)字段进行MYSQL查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36816404/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com