Google column chart in codeigniter 4 example; In this tutorial, i will show you how to implement google column chart in Codeigniter 4 app using google charts library. And as well as learn how to get month wise data from mysql database in codeigniter 4 apps.
If you are making a ecommerce and social media application. So you may need to display the data in charts. For example; how many sell today, week, month and year in ecommerce apps. OR how many users registered today, week, month and year with social media apps. So, in this example; i will guide you step by step on how to display data in charts with codeigniter 4 apps.
Create dynamic column chart in Codeigniter 4 example; For Google column chart I will get month wise data from mysql database and implement javascript apis of google column charts for display data from database in codeigniter 4 apps.
How to Implement Google Column Charts in Codeigniter 4 Apps
- Install Codeigniter 4 Application
- Basic App Configurations
- Setup Database Credentials
- Create Controller Class
- Create Views
- Setup Routes
- Start Development server
Step 1 – Install Codeigniter 4 Application
First of all, you need to ownload the latest version of Codeigniter 4. So, visit this link https://codeigniter.com/download Download Codeigniter 4 app and unzip the setup in your local system xampp/htdocs/ .
Note that, please change the download folder name “demo”.
Step 2 – Basic App Configurations
Now, you need to some basic configuration on the app/config/app.php file, so let’s go to application/config/config.php and open this file on text editor.
Set Base URL like this
public $baseURL = 'http://localhost:8080'; To public $baseURL = 'http://localhost/demo/';
Step 3 – Setup Database Credentials
To connect your codeigniter 4 app to the database. So, visit app/Config/ directory and open Database.php. Then add the databasae details like below into database.php file:
public $default = [ 'DSN' => '', 'hostname' => 'localhost', 'username' => 'test', 'password' => '4Mu99BhzK8dr4vF1', 'database' => 'demo', 'DBDriver' => 'MySQLi', 'DBPrefix' => '', 'pConnect' => false, 'DBDebug' => (ENVIRONMENT !== 'development'), 'cacheOn' => false, 'cacheDir' => '', 'charset' => 'utf8', 'DBCollat' => 'utf8_general_ci', 'swapPre' => '', 'encrypt' => false, 'compress' => false, 'strictOn' => false, 'failover' => [], 'port' => 3306, ];
Next, open your phpmyadmin and execute the following sql query on it to create table:
CREATE TABLE users ( id int(11) NOT NULL AUTO_INCREMENT COMMENT 'Primary Key', name varchar(100) NOT NULL COMMENT 'Name', email varchar(255) NOT NULL COMMENT 'Email Address', contact_no varchar(50) NOT NULL COMMENT 'Contact No', created_at varchar(20) NOT NULL COMMENT 'Created date', PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='datatable demo table' AUTO_INCREMENT=1; INSERT INTO users (id, name, email, contact_no, created_at) VALUES (1, 'Team', '[email protected]', '9000000001', '2019-01-01'), (2, 'Admin', '[email protected]', '9000000002', '2019-02-01'), (3, 'User', '[email protected]', '9000000003', '2019-03-01'), (4, 'Editor', '[email protected]', '9000000004', '2019-04-01'), (5, 'Writer', '[email protected]', '9000000005', '2019-05-01'), (6, 'Contact', '[email protected]', '9000000006', '2019-06-01'), (7, 'Manager', '[email protected]', '9000000007', '2019-07-01'), (8, 'John', '[email protected]', '9000000055', '2019-08-01'), (9, 'Merry', '[email protected]', '9000000088', '2019-09-01'), (10, 'Keliv', '[email protected]', '9000550088', '2019-10-01'), (11, 'Herry', '[email protected]', '9050550088', '2019-11-01'), (12, 'Mark', '[email protected]', '9050550998', '2019-12-01');
Step 4 – Create Controller Class
Create GoogleChart.php file. So, visit app/Controllers directory and create GoogleChart.php.Then add the following code into it:
<?php namespace App\Controllers; use CodeIgniter\Controller; use CodeIgniter\HTTP\RequestInterface; class GoogleChart extends Controller { public function index() { $db = \Config\Database::connect(); $builder = $db->table('users'); $query = $builder->query("SELECT COUNT(id) as count,MONTHNAME(created_at) as month_name FROM users WHERE YEAR(created_at) = '" . date('Y') . "' GROUP BY YEAR(created_at),MONTH(created_at)"); $record = $query->getResult(); $output = []; foreach($record as $row) { $output[] = array( 'month_name' => $row->month_name, 'count' => floatval($row->count) ); } $data['output'] = ($output); return view('home',$data); } }
- The
index()
function renders the google column template into the view.
Step 5 – Create Views
Create home.php view file, so visit app/views/ directory and create home.php file. Then add the following HTML into list.php file:
<!Doctype html> <html> <head> <title>Codeigniter 4 Google Column Chart - LaraTutorials.com</title> <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> <script type="text/javascript"> google.charts.load('visualization', "1", { packages: ['corechart'] }); </script> </head> <body> <div id="container" style="width: 550px; height: 400px; margin: 0 auto"></div> <script language="JavaScript"> function drawChart() { /* Define the chart to be drawn.*/ var data = google.visualization.arrayToDataTable([ ['Month', 'Users Count'], <?php foreach ($output as $row){ echo "['".$row['month_name']."',".$row['count']."],"; } ?> ]); var options = { title: 'Month Wise Registered Users Of Current Year <?php echo date("Y")?>', isStacked: true }; /* Instantiate and draw the chart.*/ var chart = new google.visualization.ColumnChart(document.getElementById('container')); chart.draw(data, options); } google.charts.setOnLoadCallback(drawChart); </script> </body> </html>
Step 6 – Setup Routes
To define a route, So, visit app/Config/ directory and open Routes.php file. Then add the following routes into it:
// $routes->setDefaultController('GoogleChart'); $routes->get('/', 'GoogleChart::index');
Step 7 – Start Development server
Execute the following command into command prompt or terminal to start the codeigniter 4 application:
php spark serve
Then visit your web browser and hit the following url on it:
http://localhost/demo/ OR http://localhost:8080/
Conclusion
Google column chart in codeigniter 4 example; In this tutorial You have learned how to implement google column chart in Codeigniter 4 app using google charts library.
Recommended CodeIgniter 4 Tutorial
- How to Install / Download Codeigniter 4 By Manual, Composer, Git
- How to Remove Public and Index.php From URL in Codeigniter 4
- Codeigniter 4 – Form Validation Example Tutorial
- How to add jQuery Validation on Form in Codeigniter 4 Example
- Codeigniter 4 Ajax Form Submit Validation Example
- Codeigniter 4 File Upload Validation Example
- Image Upload with Validation in Codeigniter 4
- Codeigniter 4 Image Upload Preview Using jQuery Example
- Codeigniter 4 Ajax Image Upload Preview Example
- How to Upload Multiple Images in Codeigniter 4
- Codeigniter 4 Multiple Image Upload with Preview
- Codeigniter 4 Pagination Example; Create Pagination in Codeigniter
- Simple Codeigniter 4 CRUD with Bootstrap and MySQL Example
- Codeigniter 4 CRUD with Datatables Example
- Codeigniter 4 Image Crop and Save using Croppie Example
- Codeigniter 4 Dependent Dropdown using jQuery Ajax Example
- CodeIgniter 4 Rest Api CRUD Example
- Codeigniter 4 Login Registration and Logout Example
- Codeigniter 4 – Get Address from Latitude and Longitude Ex