2017-04-11 64 views
0

我與PHP和SQL工作的百分比我犯了這樣的一個belowe表:獲得2號

enter image description here

我得到的所有數據與MySQL一樣,你可以在圖片中看到。現在我需要計算這兩個數字的百分比,例如301和197 =%34.55 這是我在我的腦海中快速做出來的,但是我怎麼能在php中爲此做出這樣的一個方法。


我也沒有嘗試這個PHP代碼來完成這項工程,但是當我複製過去,它並不在我的工作表中,並改變一些代碼。

<?php 

$row0 = 197; 
$row1 = 301; 

function percent($row0, $row1) { 
    echo number_format((1 - $row0/$row1) * 100, 2); 
} 

percent($row0, $row1); 

這是我做的表格:

echo '<table id="tablenl" class="table table-striped">'; 
echo '    <div class="container">'; 
echo ' <thead>'; 
echo '  <tr class="bg-primary">'; 
echo ' <th>Total Amount:</th>'; 
echo ' <th>Last Year</th>'; 
echo ' <th>YTD</th>'; 
echo ' </tr>'; 
echo ' <tr>'; 
echo ' <td>All countries: </td>'; 
echo '  <td><b>€ K'.$row0['total'].'</b></td>'; 
echo '  <td><b>€ K'.$row1['total'].'</b></td>'; 
echo ' </tr>'; 
echo ' <tr>'; 
echo ' <td>Netherlands: </td>'; 
echo '  <td><b>€ K'.$row2['total'].'</b></td>'; 
echo '  <td><b>€ K'.$row3['total'].'</b></td>'; 
echo ' </tr>'; 
echo ' <tr>'; 
echo ' <td>%: </td>'; 
echo '  <td>%</td>'; 
echo '  <td>%</td>'; 
echo ' </tr>'; 
echo ' </tbody>'; 
echo '</table>'; 
echo '</div>'; 

----------這些都是從我的數據庫來實數!

這樣,它似乎很好地工作:

echo '<table id="tablenl" class="table table-striped">'; 
echo '    <div class="container">'; 
echo ' <thead>'; 
echo '  <tr class="bg-primary">'; 
echo ' <th>Total Amount:</th>'; 
echo ' <th>Last Year</th>'; 
echo ' <th>YTD</th>'; 
echo ' </tr>'; 
echo ' <tr>'; 
echo ' <td>All countries: </td>'; 
echo '  <td><b>€ K'.$row0['total'].'</b></td>'; 
echo '  <td><b>€ K'.$row1['total'].'</b></td>'; 
echo ' </tr>'; 
echo ' <tr>'; 
echo ' <td>Netherlands: </td>'; 
echo '  <td><b>€ K'.$row2['total'].'</b></td>'; 
echo '  <td><b>€ K'.$row3['total'].'</b></td>'; 
echo ' </tr>'; 
echo ' <tr>'; 
echo ' <td>%: </td>'; 
$row0 = 197; 
$row1 = 301; 

function percent($row0, $row1) { 
echo '  <td>'.number_format((1 - $row0/$row1) * 100, 2); 
} 

percent($row0, $row1); 
'</td>'; 
echo '  <td>%</td>'; 
echo ' </tr>'; 
echo ' </tbody>'; 
echo '</table>'; 
echo '</div>'; 

但 $ 0行= 197; $ row1 = 301;

是硬編碼:(

+2

什麼是「不工作」的意思的比例是不正確的電腦爆炸,...你有真正的數字,或者你正在計算文本? –

+0

請嘗試分開你的HTML和PHP。 – julekgwa

+0

我認爲你可以(也可能應該)在MySQL中處理這個問題嗎? –

回答

1

你的最終代碼會是這樣的:???

echo ' <td>%: </td>'; 
echo '  <td>'. percent($row0['total'], $row2['total']) .'%</td>'; 
echo '  <td>'. percent($row1['total'], $row3['total']) .'%</td>'; 
echo ' </tr>'; 
+0

致命錯誤:調用undefined函數百分比() – Deniz

+0

當然,你將不得不在同一個文件中定義函數或從不同的來源包括它。這個答案有效。 – yarwest