2016-04-25 4 views
0

Ich versuche, Ergebnisse als Prozentsatz Balken (CSS) anzuzeigen, bekomme ich $row['Balai'] von mysql query, dann zählen die $proc davon, ich setze $sum als auch. Es funktioniert gut, aber anstelle von verschiedenen inner Wert (bar) bekommen ich immer gleich und alle Bars sieht gleichCss Prozentwert in PHP

while($row=$list->fetch_assoc()){ 
    $proc = round((($row['Balai']/$sum) * 100),1); ?> 
    <style type="text/CSS"> 
    .outter{ 
    height 25px; 
    width:500px; 
    border-right:solid 1px #000; 
    background-color: red; 
    } 
    .inner{ 
    height:25px; 
    width: <?php echo $proc ?>%; 
    border-right:solid 1px #000; 
    background-color:lightblue; 
    </style> 
    <tr> 
    <center> 
    <?php 
    echo "<td>" . $row['ID'] . "</td><td>" . $row['Vardas'] . "</td><td>" . $row['Pavarde'] . "</td><td>" . $row['Balai'] . "<td>"; ?> 
    <div class="outter"> 
    <div class='inner'><?php echo $proc ?>%</div> 
    <?php 
    echo "</td><br />"; 
    echo "</center>"; 
    echo "</tr>"; 
    $x++; 
    } 
    echo "</table>"; 
    echo "<b>100% sudaro: " . $sum . "</b>"; 
+0

Da der Browser den PHP-Code, den Sie zum Generieren Ihres HTML- und CSS-Codes verwendet haben, nicht sehen kann, können Sie mit der Diagnose Ihres Browsers beginnen. Es ist die Funktion * View Source *, die oft der Ctrl + U-Verknüpfung zugeordnet ist. –

+0

@Dr. Doctor brechen die Tabellen-HTML-Struktur. div sollte innerer Teil des td/th Tags sein nur –

+0

Hast du das schon statisch probiert? Mit einer hart codierten Breite? – Doug

Antwort

0

Versuchen Sie folgendes: (Stellen Sie sicher, der Wert von $proc unterscheidet)

<style type="text/CSS"> 
     .outter{ 
     height 25px; 
     width:500px; 
     border-right:solid 1px #000; 
     background-color: red; 
     } 
     .inner{ 
     height:25px;  
     border-right:solid 1px #000; 
     background-color:lightblue; 
     </style> 
    <?php 
    while($row=$list->fetch_assoc()){ 
     $proc = round((($row['Balai']/$sum) * 100),1); ?> 

     <tr> 
     <center> 
     <?php 
     echo "<td>" . $row['ID'] . "</td><td>" . $row['Vardas'] . "</td><td>" . $row['Pavarde'] . "</td><td>" . $row['Balai'] . "<td>"; ?> 
     <div class="outter"> 
     <div class='inner' style='width: "<?php echo $proc ?>"%'><?php echo $proc ?>%</div> 
     <?php 
     echo "</td><br />"; 
     echo "</center>"; 
     echo "</tr>"; 
     $x++; 
     } 
     echo "</table>"; 
     echo "<b>100% sudaro: " . $sum . "</b>"; 
+0

Immer noch das gleiche, und ja yech Wert, der Echo ist anders. –

+0

Ich habe den Code aktualisiert.Auch aus Sicht Quelle überprüfen Sie bitte, was ist der Wert der Breite –

+0

http://i68.tinypic.com/2ch24gn.png Inspect Element zeigt: http://i66.tinypic.com/2hga7bp.png Scheint wie Breite ändert sich, aber nicht visuell –