MySQLDataSource
Introduction #
Although using PDODataSource
can connect to MySQL. However if for some reasons, you do not have the PDO Driver, you may use the old traditional connection to MySQL using MySQLDataSource
Settings #
Name | type | default | description |
---|---|---|---|
class | string | Must set to '\koolreport\datasources\MySQLDataSource' | |
connection | object | Set the connection object | |
host | string | Host of database | |
username | string | Your login username | |
password | string | Your password | |
dbname | string | Database name | |
charset | string | Charset |
If connection
is set to an existed connection, that connection object will be used.
Otherwise, KoolReport will create a new or use a previously own-created connection object of the same setting.
Methods #
Name | return | description |
---|---|---|
query(string $str_query) | MySQLDataSource | This method is used in report's setup() function. It will help to setup query string which will be executed when report is run. |
params(array $params) | MySQLDataSource | This method is used to set list of parameters for query statement |
Example #
<?php
class MyReport extends \koolreport\KoolReport
{
public function settings()
{
return array(
"dataSources"=>array(
"automaker"=>array(
'host' => 'localhost',
'username' => 'root',
'password' => '',
'dbname' => 'automaker',
'charset' => 'utf8',
'class' => "\koolreport\datasources\MySQLDataSource"
),
)
);
}
public function setup()
{
$this->src('automaker')
->query("SELECT * FROM tblPurchase where status=:status")
->params(array(":status"=>"completed"))
->pipe(..)
->pipe(..)
->pipe($this->dataStore('purchase_summary'));
}
}
In above example, we query all data from table tblPurchase
of "automaker"
. The query result will be piped through many processes in between until it reaches the final data store called "purchase_summary"
.
Get started with KoolReport
KoolReport will help you to construct good php data report by gathering your data from multiple sources, transforming them into valuable insights, and finally visualizing them in stunning charts and graphs.