使用mysql_fetch_array时防止多重回声

I want to calculate total price using MySQL table when I use mysql_fetch_array. But when I echo total, I get the calculated total price in steps:

5000
10000
16000

Instead, I want to get just the final result.

Here is my PHP code:

$year=$_PoST['year'];
$mounth=$_POST['mounth'];

$con=mysql_connect('localhost','root','');
$select=mysql_select_db('payment');
$sql='select * from payments p 
where year(p.date) = '.$year.' and monthname(p.date) = "'.$mounth.'"';
$query=mysql_query($sql);
while($row=mysql_fetch_array($query)){
$price=$row['full_amount_must_pay'] ;

$total=$price+$total;
echo $total;

}

}

How can I calculate total price from database without the extra two lines?

first of all... if you JUST need the Sum make it like this:

$sql='select SUM(full_amount_must_pay) from payments p where year(p.date) = '.$year.' and monthname(p.date) = "'.$mounth.'"';
$query=mysql_query($sql);
if($row=mysql_fetch_array($query)){
    echo $row[0];
}

otherwise print your total outside of your while... like this

while($row=mysql_fetch_array($query)){
    $price=$row['full_amount_must_pay'] ;
    $total=$price+$total;
}
echo $total;

use

$year=$_PoST['year'];
$mounth=$_POST['mounth'];

    $con=mysql_connect('localhost','root','');
    $select=mysql_select_db('payment');
    $sql='select * from payments p 
    where year(p.date) = '.$year.' and monthname(p.date) = "'.$mounth.'"';
    $query=mysql_query($sql);
    while($row=mysql_fetch_array($query)){
    $price=$row['full_amount_must_pay'] ;

    $total=$price+$total;


    }
    echo $total;

Just use a sum ?

select sum(full_amount_must_pay) from payments p
where year...