Mega Code Archive

 
Categories / Php / Graphics
 

Php Script for RChart

The following example will create an area chart (it is very similar to the example Chart2.htm). It will retrieve the data from an MSAccess database that contains a table called "salesMonth". This table has three fields: "Products" (integer), "Services" (integer) and "salesMonth" (date), which contains the sales for several months. The example will display the sales of the last 6 months. It will create a HTML page that contains the applet. Most of the parameters of the applet are constant, however the date labels and the sales data is retrieved from the DB. <HTML> <HEAD></HEAD> <BODY> <APPLET CODEBASE = "." CODE = "com.java4less.rchart.ChartApplet.class" NAME = "TestApplet" WIDTH = 500 HEIGHT = 500 ALIGN = middle > <!-- **** VARIABLE DATA, use Php to retrieve series data values from database **** --> <? $labels=""; $values2=""; $values1=""; $i=1; /* connect to database open db using a System ODBC data source called "Data" */ $odbcid = odbc_connect ("data", "", "", ""); /* get sales data, execute SQL*/ $resultid = odbc_exec ($odbcid, "Select * from SalesMonth Order by salesMonth DESC") ; /* iterate on sales data, up to 6 rows */ while (($i <= 6) and (odbc_fetch_row($resultid))) { /* concatenate | separator */ if ($i>1) { $values1= "|" . $values1; $values2= "|" . $values2; $labels= "|" . $labels; } /* concatenate value */ $values1= odbc_result ($resultid, "Services") . $values1; $values2= odbc_result ($resultid, "Product") . $values2; $labels= odbc_result ($resultid, "salesMonth") . $labels; $i=$i+1; /* next record */ odbc_fetch_row($resultid); } /* echo values for serie 1 */ echo "<PARAM NAME = \"SERIE_DATA_1\" VALUE = \""; echo $values1; echo "\">"; /* echo values for serie 2 */ echo "<PARAM NAME = \"SERIE_DATA_2\" VALUE = \""; echo $values2; echo "\">"; /* echo values for labels */ echo "<PARAM NAME = \"XAXIS_LABELS\" VALUE = \""; echo $labels; echo "\">"; /* close result */ odbc_free_result($resultid); /* close connection */ odbc_close($odbcid); ?> <!-- **** CONSTANT DATA **** --> <PARAM NAME = "TITLECHART" VALUE = "Sales 1999"> <PARAM NAME = "LEGEND" VALUE = "TRUE"> <PARAM NAME = "XLABEL" VALUE = "Month"> <PARAM NAME = "YLABEL" VALUE = "Million $"> <PARAM NAME = "SERIE_1" VALUE = "Services"> <PARAM NAME = "SERIE_2" VALUE = "Products"> <PARAM NAME = "SERIE_STYLE_1" VALUE = "0.2|0x663300|LINE"> <PARAM NAME = "SERIE_STYLE_2" VALUE = "0.2|0x99|LINE"> <PARAM NAME = "SERIE_FILL_1" VALUE = "RED"> <PARAM NAME = "SERIE_FILL_2" VALUE = "0x99cc"> <PARAM NAME = "SERIE_FONT_1" VALUE = "Arial|PLAIN|8"> <PARAM NAME = "SERIE_FONT_2" VALUE = "Arial|PLAIN|8"> <PARAM NAME = "SERIE_POINT_1" VALUE = "true"> <PARAM NAME = "SERIE_POINT_2" VALUE = "true"> <PARAM NAME = "SERIE_TYPE_1" VALUE = "LINE"> <PARAM NAME = "SERIE_TYPE_2" VALUE = "LINE"> <PARAM NAME = "CHART_BORDER" VALUE = "0.2|BLACK|LINE"> <PARAM NAME = "CHART_FILL" VALUE = "LIGHTGRAY"> <PARAM NAME = "BIG_TICK_INTERVALX" VALUE = "1"> <PARAM NAME = "BIG_TICK_INTERVALY" VALUE = "1"> <PARAM NAME = "YSCALE_MIN" VALUE = "0"> <PARAM NAME = "TICK_INTERVALY" VALUE = "100"> <PARAM NAME = "LEGEND_BORDER" VALUE = "0.2|BLACK|LINE"> <PARAM NAME = "LEGEND_FILL" VALUE = "WHITE"> <PARAM NAME = "XAXIS_TICKATBASE" VALUE = "true"> <PARAM NAME = "XAXIS_TICKATBASE" VALUE = "true"> <PARAM NAME = "BACK_IMAGE" VALUE = "back13.gif"> </APPLET> </BODY> </HTML>