0

パーセンテージ バーを表示するスクリプトがあり、それを寄付の目標に使用して、ユーザーが特定の月に必要な金額を確認できるようにする予定です。これは現在のコードです:

<style>
.percentbar { background:#CCCCCC; border:1px solid #666666; height:25px; }
.percentbar div { background: #28B8C0; height: 25px; border-right:1px solid black }
</style>
</head>
<body>
<?php
include("config.php");
$data = mysql_query("SELECT * FROM donationgoal");
    while ($info = mysql_fetch_array($data)) {
        if (isset($_POST['add'])) {
    $add = mysql_real_escape_string($_POST['add']);
            $total = $info['total'] + $add;
        }
    mysql_query("UPDATE donationgoal SET total = ".$total." ");
            $value = $info['total'];
    }

        echo $value;

// Testing numbers. Replace with your own.
$max = 100;
$scale = 2.0;

// Get Percentage out of 100
if ( !empty($max) ) { $percent = ($value * 100) / $max; } 
else { $percent = 0; }

// Limit to 100 percent (if more than the max is allowed)
if ( $percent > 100 ) { $percent = 100; } 
?>
<form method="post">
<input type="text" name="add" />
<input type="submit" />
</form>
<div class="percentbar" style="width:<?php echo round(100 * $scale); ?>px;">
  <div style="width:<?php echo round($percent * $scale); ?>px;"></div>
</div>
Percentage: <?php echo $percent; ?>%
</body>

現在、これは完全に正常に機能します (テーブルが完全に更新されます) が、送信後にページが更新された後、バーは変化しません。変更される唯一の方法は、フォームを送信した後にページを手動で更新することです。最初の送信後にバーが更新されるようにする方法はありますか?

4

1 に答える 1