0

私はこのコードを持っています

while($row=mysql_fetch_array($qu2)){
    $login_time=$row[login_time];
    $logout_time=$row[logout_time];
    $totlawork=($logout_time)-($login_time);
    $lossawork=($login_time)-('08:00:00');   

    echo '<tr>';
    echo '<td class="xtd"><div align="center">'.$cnt.'</div></td>';
    echo '<td class="xtd"><div align="center">'.$row[full_name] .'</div></td>';
    echo '<td class="xtd"><div align="center">'.$row[salary].'</div></td>';
    echo'<td class="xtd"><div align="center">'.$totlawork.'</div></td>';
    echo '<td class="xtd"><div align="center">'.$lossawork.'</div></td>';
    echo '</tr>';

    $cnt++;
}

すべてのレコードで$lossaworkの合計を取得するつもりはありませんこれを行うにはどうすればよいですか

4

4 に答える 4

2
$lossawork_total = 0; // set total to 0
while($row=mysql_fetch_array($qu2)){
    $login_time=$row[login_time];
    $logout_time=$row[logout_time];
    $totlawork=($logout_time)-($login_time);
    $lossawork=($login_time)-('08:00:00');     
    echo '<tr>';
    echo '<td class="xtd"><div align="center">'.$cnt.'</div></td>';
    echo '<td class="xtd"><div align="center">'.$row[full_name] .'</div></td>';
    echo '<td class="xtd"><div align="center">'.$row[salary].'</div></td>';
    echo'<td class="xtd"><div align="center">'.$totlawork.'</div></td>';
    echo '<td class="xtd"><div align="center">'.$lossawork.'</div></td>';
    echo '</tr>';
    $cnt++;
    $lossawork_total += $lossawork; // add this lossawork to total
}
echo $lossawork_total; // display total
于 2012-06-01T12:20:56.550 に答える
1

質問に完全に答えるには、質問にさらにコードが必要ですが、質問に対する私の理解に基づいて、次のようにして目的を達成できます。

//Declare a variable to store the sum and initialize it to 0
$sum_lossawork = 0;

while($row=mysql_fetch_array($qu2)){

    ...
    ...
    $lossawork= ...

    //For each row in the data set add $lossawork to the sum
    $sum_lossawork += $lossawork;

    ...
    ... 

    $cnt++;
}

echo $sum_lossawork;
于 2012-06-01T12:20:49.460 に答える
1

ループの最後に別のカウンターに lossawork を追加し、そのカウンターをページに表示すると、ループの実行中にすべての lossawork が一緒に追加されます。

于 2012-06-01T12:19:38.970 に答える
1

while ループの外側で変数を使用します。ここでは ( $sum)

$sum = 0;

while(...){
...
...
...
...

$sum += $lossawork;

}

echo $sum;
于 2012-06-01T12:19:48.697 に答える