Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/352.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 在MySQL中计算今天日期的总和#解析错误_Php_Mysql - Fatal编程技术网

Php 在MySQL中计算今天日期的总和#解析错误

Php 在MySQL中计算今天日期的总和#解析错误,php,mysql,Php,Mysql,如果tdate不是数据库中的INT数据类型,则需要将该值封装在引号中: <?php include "db.php"; while($row=mysql_fetch_array($res)) { //Result; //select the sum in here; $sumQry = "SELECT SUM(amount) FROM login"; } ?> 我建议您修改MySQL表并使用DATE、DATETIME或TIMESTAMP 你的字段是CHAR或

如果tdate不是数据库中的INT数据类型,则需要将该值封装在引号中:

<?php
include "db.php";
while($row=mysql_fetch_array($res))
{
    //Result;
    //select the sum in here;
    $sumQry = "SELECT SUM(amount) FROM login";
}
?>

我建议您修改MySQL表并使用DATE、DATETIME或TIMESTAMP

你的字段是CHAR或VARCHAR,这意味着索引即使存在也不能正常工作

如果您将该字段作为上述字段之一,则可以对它们进行索引,并且即使在大量记录上,查询的性能也将是最佳的

事情就是日期,日期时间和时间戳由MySQL数字存储。此外,如果您需要显示多于一条记录,并且希望按此字段排序,则可以按此字段排序

$sumQry = 'SELECT SUM(amount)
           FROM login 
           WHERE tdate = "'.date("F d, Y" ,time()).'"';
我还添加了MySQL字段引号,因为即使在大多数情况下不一定是这样,使用它也是一件好事。如果您有一个大型的联合查询,那么它的性能将提高5%。如果您碰巧使用保留字作为字段名,它们也很好

您的代码应该如下所示:

$sumQry = "SELECT SUM(`amount`) FROM `login` WHERE `tdate` = ". date("Y-m-d" ,time());
$sumQry = "SELECT SUM(`amount`) FROM `login` WHERE `tdate` = ". date("Y-m-d H:i:s" ,time());
$sumQry = "SELECT SUM(`amount`) FROM `login` WHERE `tdate` = ". time();
在db.php中,您应该有如下内容:

include "db.php";
$res = mysqli_query($con, "SELECT SUM(`amount`) FROM `login` WHERE `tdate` = '". date("Y-m-d" ,time() . "' GROUP BY `ammount`;");
$row = mysqli_fetch_array($res);
echo $row[1];

仅供参考,在查询字符串中使用PHP标记对您没有好处。您已经在PHP中构建了查询字符串,因此请使用与
的连接将
date()
之类的函数的输出添加到字符串中,如@pvnarula的答案所示。现在检查。注意while循环是不需要的,因为由于组的原因,将返回一个结果。另外,我使用mysqli而不是mysql,因为mysql已被弃用。请看@tinu谢谢:)我已经更新了我的问题,请检查一下now@ilwrence谢谢:)我已经更新了我的问题,请检查一下now@user2457175您需要首先进行查询,更新一些php/sql教程
include "db.php";
$res = mysqli_query($con, "SELECT SUM(`amount`) FROM `login` WHERE `tdate` = '". date("Y-m-d" ,time() . "' GROUP BY `ammount`;");
$row = mysqli_fetch_array($res);
echo $row[1];
$con = mysqli_connect('localhost', 'my_user', 'my_password', 'my_db');