2013-06-24 219 views
0

我有一个数据库,也有一个fldDuration字段。每当我输入一些商业广告时,它也会有一段时间。 fldDuration是广告的实际时间。PHP:计算持续时间[秒/分钟]

实施例:

fldCommercialName,fldDuration和fldTotalDuration 我插入值..

商业名称:NIKE [输入]

持续时间:15秒[输入]

总持续时间:11:45分钟[将基于fldDuration和fldTotalDuration的计算而出现,并且在我点击按钮之后]

因此,每个广告的总数是12分钟。因此,对于这个例子,我会扣除15秒到20分钟。那么总共现在是11:45分钟[这是商业广告的剩余时间]。

问题:我怎么能这样做,就像我在此消息上面所说的那样。

*我还没有任何代码,因为我不知道如何进行计算。

谢谢。

+0

大部分时间甚至全部日期都是以秒为单位进行跟踪的。从这个数学很容易,'/ 60'分钟等等。这通常只是一个整数,数学变得很容易。 –

回答

0

嗯......你可以尝试定义触发火灾BEFORE INSERT,运行:

SET new.`fldTotalDuration` = 20*60 - (SELECT SUM(`fldDuration`) FROM `tablename`) - new.`fldDuration` 

这应该正确calcuate值。

也就是说,这种事情最好在PHP端进行计算。

+0

@Kinkink ...设置后的“新”...是什么?和“之前的新增功能? –

+0

在触发器中,'new'是指正在处理的新行。 –

+0

@Kolink ...如果我没有使用”新“,因为我打算做什么我的数据库字段是...“CommercialName”,“fldDuration”,fldTotalDuration“..然后在我的表单中,我将显示商业名称和fldtotalduration。 –