2014-01-29 67 views
0

我已經使用此代碼通過從數據庫中提取產品的銷售價格和MRP來計算折扣。折扣公式工作正常,但計算折扣低於5%時,其折扣率爲0%。我無法弄清楚。幫助讚賞。折扣公式不計算折扣低於5%

<?php 
$mainsql="SELECT ProductID, ProductName, Brand, MRP, SP 
FROM producttable 
WHERE ProductID='".$id."'"; 
$mainquery=mysql_query($mainsql); 
$main=mysql_fetch_row($mainquery); 

$mrp=number_format($main[3], 0, ' ', ','); 
$sp=number_format($main[4], 0, ' ', ','); 

$discount=(($mrp-$sp)/$mrp)*100; 

<h3>Discount: You save<span class=\"percentage_style\"> ".round($discount, 0)."</span>%</h3> 
?> 
+1

請您提供數據轉儲。我已經運行了一些測試並且無法複製 – NiGhTHawK

+1

您能否提供一些存儲在數據庫中的MRP和SP值。 (沒有數字格式) –

+0

像MRP - 6500和SP - 6250 ..它顯示0%的折扣,當它實際上成爲3%的折扣 – Abhi

回答

0

是那是因爲你正在做的做算術運算

正確的方法應該是之前的數字格式 -

$mrp = 6500 ; 
$sp = 6250 ; 

$dis = round((($mrp-$sp)/$mrp)*100) ; 
echo $dis ; 

這將是4%,因爲如果沒有圓其周圍3.8461538461538

一旦你做了計算,你可以使用顯示部分的數字格式。

+0

嘿謝謝刪除number_format也做了伎倆..非常感謝 – Abhi

+0

不客氣! –