使用PHP HTML生成条形图,使百分比正确显示


generating a bar graph with php html making percentages display correctly?

谁能帮助我,我试图做一个简单的代码与php和html,我的目标是通过数据库得到我的变量和张贴的数字,并在结束时添加一个%,但我的代码,这对我来说是混乱的。

最后一个是硬编码的。

点击这里查看图片。https://i.stack.imgur.com/0Apoh.png黄色的图形显示在55%,其余的不会被填充,如底部的图形。

<style type="text/css">
    .red {background-color: red;}
    .green {background-color: green;}
    .yellow{background-color: yellow;}
    .bar { width: 15%; border: 1px solid #000; background: grey; }
    </style>

    <?php   
    if ($percentage >= 51 && $percentage <= 74) {
    echo "<div class='"bar'" align='"left'"><div class='"yellow'" style='"width: $percentage %'">$percentage test</div></div>";
    } else if ($percentage >= 75){
    echo "<div class='"bar'" align='"left'"><div class='"green'" style='"width: $percentage '"%'">$percentage test</div></div>";
    } else if ($percentage >= 0 && $percentage <= 50) {
    echo "<div class='"bar'" align='"left'"><div class='"red'" style='"width:46%'">$percentage test</div></div>";
    }
    ?>

我不知道你是如何得到百分比值的,但我可以看到你用3种不同的方式定义你的风格:第一个会产生:width: 33px;这是正确的,但第二个是错误的正确的是:

echo "<div class='"bar'" align='"left'"><div class='"red'" style='"width:$percenage%'">$percentage test</div></div>";

echo "<div class='"bar'" align='"left'"><div class='"red'" style='"width:".$percentage."%'">$percentage test</div></div>";

这是为了完成上面的答案。我忘了你也可以用重要的论点。…宽度:$ percantage % !重要;

你不能像那样在字符串里面放变量。所以你应该这样做:

if ($percentage >= 51 && $percentage <= 74)
    echo "<div class='"bar'" align='"left'"><div class='"yellow'" style='"width:". $percentage." %'">".$percentage." test</div></div>";