Rumah  >  Soal Jawab  >  teks badan

Tukar warna latar belakang HTML TD secara dinamik berdasarkan nilai menggunakan PHP

Saya cuba menukar warna latar belakang TD secara dinamik, tetapi ia membuatkan saya gila kerana saya tidak tahu cara membetulkan kod tersebut.

Ini kod saya:

<td data-column="% Over 0.5 SH" style="background-color: <?php echo $backgroundColorOver05SH; ?>">
<?php 
if (($row['TotalMatch']) > 9){ 
$percover05sh = $row['OK_05sh'] / $row['TotalMatch'] * 100; 
echo sprintf("%.2f", $percover05sh);


if ($percover05sh > 80){
    $backgroundColorOver05SH = "green";
} elseif ($percover05sh >= 70 and $percover05sh <= 79.99  ){
    $backgroundColorOver05SH = "yellow";
} else {
    $backgroundColorOver05SH = "red";
}

Saya rasa saya berada di arah yang betul, tetapi saya tidak dapat mencari penyelesaian yang betul. Ada apa-apa cadangan? Terima kasih!

EDIT: Kod ini kini berfungsi! Inilah kod lengkap saya:

<?php 
if (($row['TotalMatch']) > 9){ 
$percover05sh = $row['OK_05sh'] / $row['TotalMatch'] * 100; 

if ($percover05sh >= 80){
    $backgroundColorOver05SH = "green";
} elseif ($percover05sh >= 70 && $percover05sh < 80  ){
    $backgroundColorOver05SH = "yellow";
} else {
    $backgroundColorOver05SH = "red";
}

}else{
echo 'No Bet';
}     ?>
<td data-column="% Over 0.5 SH" style="background-color: <?php echo $backgroundColorOver05SH;?>;">
<?php
echo sprintf("%.2f", $percover05sh);    
?>
</td>

P粉295728625P粉295728625225 hari yang lalu333

membalas semua(2)saya akan balas

  • P粉908643611

    P粉9086436112024-04-01 00:23:43

    Selain menukar susunan dalam kod (seperti yang ditulis dalam ulasan soalan), saya juga akan menambah koma bertitik selepas nilai warna latar belakang yang digemakan oleh PHP dalam atribut gaya, iaitu

    balas
    0
  • P粉938936304

    P粉9389363042024-04-01 00:13:34

    Jadi pertama:

     
     9){ 
    $percover05sh = $row['OK_05sh'] / $row['TotalMatch'] * 100; 
    echo sprintf("%.2f", $percover05sh);
    
    
    if ($percover05sh > 80){
        $backgroundColorOver05SH = "green";
    } elseif ($percover05sh >= 70 && $percover05sh < 80  ){
        $backgroundColorOver05SH = "yellow";
    } else {
        $backgroundColorOver05SH = "red";
    }
    ?>
    
     9){ 
    */
    }
    ?>
    

    Jika warna tidak berubah, mungkin ia ditetapkan oleh peraturan atau skrip CSS yang berbeza?

    balas
    0
  • Batalbalas