0
首先,我有一個存儲表如下:PHP數組到圖形
表名:商店
id |name
1 | M1
2 | M2
而且每家商店被認爲是其有自己的項目表,銷售價格和數量如下
表名:M1
id | item | qty | sell_price
1 | z1 | 12 | 5.00
2 | z2 | 15 | 6.00
表名:M2
id | item | qty | sell_price
1 | z1 | 12 | 5.00
2 | z5 | 25 | 12.00
3 | z6 | 5 | 7.00
現在我想創建一個條形圖由我需要看每個門店的總銷售價格(SUM(sell_price)
),具體如下:
Y-axis (Total Sell_price)
30| _____
25| ____ | |
20| | | | |
15| | | | |
0|_|____|__|_____|________ X - axis (Store Name)
M1 M2
我創建瞭如下PHP代碼:
$query1 = "SELECT name from stores";
$result1 = mysql_query($query1);
if(!mysql_num_rows($result1)>0){
echo "<center><font color=red>No Stores Found !</font></center>";
}
else{
while ($row1 = mysql_fetch_assoc($result1)){
$query = "SELECT *,SUM(sell_price) FROM {$row1['name']}";
$result = mysql_query($query);
$row = mysql_fetch_assoc($result);
$store[]= $row1['name'];
$sale[] = $row['SUM(sell_price)'];
}
}
條形圖JavaScript - 請注意var s1
和var ticks
是需要改變的那些,並從上面的PHP循環收集陣列現在
<script class="code" type="text/javascript">$(document).ready(function(){
$.jqplot.config.enablePlugins = true;
var s1 = [200, 888, 645, 1044];
var ticks = ['M1','M7','M9','M10'];
plot1 = $.jqplot('chart1', [s1], {
// Only animate if we're not using excanvas (not in IE 7 or IE 8)..
animate: !$.jqplot.use_excanvas,
seriesDefaults:{
renderer:$.jqplot.BarRenderer,
pointLabels: { show: true }
},
axes: {
xaxis: {
renderer: $.jqplot.CategoryAxisRenderer,
ticks: ticks
}
},
highlighter: { show: false }
});
$('#chart1').bind('jqplotDataClick',
function (ev, seriesIndex, pointIndex, data) {
$('#info1').html('series: '+seriesIndex+', point: '+pointIndex+', data: '+data);
}
);
});</script>
,你可以看到,我創建了一個數組$store
和$sale
- 不知道它的一個正確的數組,因爲我不太熟悉數組。但是我需要找到如何將數組值分配給相應的javascript 變量(s1和勾號)。
感謝您的回覆,我已經嘗試了您的答案,但圖表根本沒有顯示出來。 –
順便說一句,s1應該是出售,並蜱商店名稱。我只嘗試過s1,總銷售價格顯示出來,但看起來y軸上的數字是相互重疊的。也許數組中的數據本身不正確? –
我已將我的代碼反轉以反映您的評論。如果您查看網頁的源代碼,那麼PHP的值是否正確打印? – Technoh