議事録の取得/計算に大きな問題があります。
シナリオ:
ユーザーが秒 [5 秒、10 秒、25 秒、30 秒、60 秒] を入力できるフォームがあります。テーブルを「Duration」と呼びました
私のデータベースには、 「1:5」 [最後の入力]である「期間」 [分:秒で構成] が既にあります。その後、もう一度「10s」秒を挿入します...
*形式は分:秒です
正しい出力は次のようになります: 1:15
現在の結果: 0:15
私たちが見るように。議事録の計算に問題があります。これから紹介するコードは、秒を引くのに適しています。しかし今、秒を追加するように修正する必要があります。
これが私のコードです:
$duration = $_POST["duration"];
if(sizeof($bldg) == 1)
{
$total = sizeof($bldg)-1;
}
else
{
$total = sizeof($bldg)%2;
}
for($i=0; $i<sizeof($bldg);$i++)
{
$result = mysql_query("SELECT fldTotalDuration FROM tbldata WHERE fldNetname = '".$network."' AND fldBldgName = '".$bldg[$i]."' AND fldWeek = '".$week."' AND fldMonth = '".$month."' ");
if(mysql_num_rows($result)==0)
{
$totalduration = "";
$seconds = 0;
$minutes = 0;
$computeSecMin = $seconds * $minutes;
$subSecMin = $computeSecMin + $duration;
$getMin = floor($subSecMin/60);
$getSec = $subSecMin%60;
$totalduration = $getMin .":". $getSec;
}
else{
$row = mysql_fetch_array($result);
$time = explode(":",$row['fldTotalDuration']);
$dur = explode(" ",$duration);
$computeSecMin = 60 * $time[0];
$subSecMin = $computeSecMin + $time[1] + $dur[0];
$getMin = floor($subSecMin/60);
$getSec = $subSecMin%60;
$totalduration = $getMin .":". $getSec;
}
}
$query = "INSERT INTO tbldata(fldNetname,fldBldgName,fldPlaylist,fldMonth,fldWeek,fldDuration,fldFrom,fldTo,fldTotalDuration) VALUES ('".$network."','".$bldg[$i]."','".$AdName."','".$month."','".$week."','".$duration."','".$from."','".$to."', '".$totalduration."')";
mysql_query($query) or die (mysql_error());
$duration = は、5 秒、10 秒、25 秒、30 秒、60 秒で構成されるコンボボックス/ドロップダウンである別のフォームから来ています。
現在、秒を追加するのは問題ありませんが、分を追加するのは良くありません。
計算に関する私の問題は、この"$getMin = floor($subSecMin/60); "です。この計算の結果は"0"ですが、この計算は"minutes"のため、"1"である必要があります。
この問題を解決してくれてありがとう。