Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.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_Sql_Targets - Fatal编程技术网

在PHP&;中显示溢出的月度目标;MySQL

在PHP&;中显示溢出的月度目标;MySQL,php,mysql,sql,targets,Php,Mysql,Sql,Targets,我已经试了几个星期来想知道如何解决这个问题,但我不能得到它的权利 我在数据库中有一个表,由monthdate、用户id、目标和值组成,如下所示 +-------+---------+--------+-------+ | month | user_id | target | value | +-------+---------+--------+-------+ | Jan | 1 | 10000 | 7694 | | Feb | 1 | 10000 |

我已经试了几个星期来想知道如何解决这个问题,但我不能得到它的权利

我在数据库中有一个表,由monthdate、用户id、目标和值组成,如下所示

+-------+---------+--------+-------+ | month | user_id | target | value | +-------+---------+--------+-------+ | Jan | 1 | 10000 | 7694 | | Feb | 1 | 10000 | 9487 | | Mar | 1 | 12000 | 14054 | +-------+---------+--------+-------+ +-------+---------+--------+-------+ |月|用户| id |目标|值| +-------+---------+--------+-------+ |7694年1月1日10000日| |19487年2月1日10000| |14054年3月1日12000日| +-------+---------+--------+-------+ 显示数据是容易的部分,但当涉及溢出时,它会变得棘手。如果用户的值超过当月的目标值,则剩余值将溢出到下个月,并在全年中继续填充。例如,如果1月的目标为10000英镑,1月底的价值为35000英镑,则1月为100%,2月为100%,3月为100%,4月为50%(假设目标全年不变)

如果用户未超过上个月的目标,则下个月的值将添加到上个月,以便达到目标

使用PHP和MySQL有没有更简单的方法?现在我只是简单地查询数据,然后使用多个if条件显示它,并使用while循环显示溢出。我应该改为使用数组吗


我不希望有明确的代码,但如果您能为我指出正确的方向,我将非常感激!)

在没有看到任何php代码的情况下,我很难给您提供很多帮助。你遇到的这个问题似乎很直截了当。根据我收集的数据,目标值和值应该是相同的数字,但上个月的数字可能会更小。只要在循环中做一些简单的数学运算就足以完成您正在做的事情。如果值>目标$溢出=$value-target。。。如果溢出>0,则执行下一个循环$值+=$overflow。。冲洗并重复