totalul înregistrărilor în timpul buclă

Am acest cod

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++;
}

am obiceiul de a obține suma de pierderi $ pe toate înregistrările cum pot face acest lucru

0
problema nu pot însuma valoarea pierderii $
adăugat autor Eng Kam, sursa
mulțumesc pentru tot ce va face
adăugat autor Eng Kam, sursa
Unde este problema?
adăugat autor Andrius Naruševičius, sursa
După ce ați terminat codul dvs.: meta.stackexchange.com/questions/5234/…
adăugat autor Ozair Kafray, sursa
utilizează probabil o variabilă statică?
adăugat autor optimusprime619, sursa

4 răspunsuri

$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
2
adăugat

utilizați o parte variabilă din buclă în timp, aici ( $ sum )

$sum = 0;

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

$sum += $lossawork;

}

echo $sum;
1
adăugat

Mai mult cod este necesar în întrebarea de a răspunde complet, dar pe baza înțelegerii mele de întrebare, ceea ce vrei poate fi atins după cum urmează:

//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;
1
adăugat

În finalul buclă, adăugați pierderile la contorul de anotimp și arătați acel contor pe pagină, acesta va adăuga toate pierderile împreună pentru dvs. în timp ce bucla se execută.

1
adăugat
PHP România, Moldova
PHP România, Moldova
173 participanți

Vorbim despre Yii, Laravel, Symphony, MySQL, PgSQL, WP, OpenCart... Pentru confort, opriți notificările. Parteneri: https://ciupacabra.com @js_ro @node_ro @python_ro @seo_ro @Romania_Bot Offtop: @holywars_ro Joburi: @php_job @Grupuri_IT