Thursday, November 20, 2014
simple generator CRUD database operation using Grocery CRUD
In addition Grocery Crud also always developed by the developer and this library is Open Source. Okey .. we just discussed for using grocery CRUD tutorial on CodeIgniter.
The first step
If you do not have it you can download the library Grocery CRUD at www.grocerycrud.com.
Then if you have not got a CodeIgniter can download www.codeigniter.com
Step two
Once you have successfully downloaded, please be sure could've used CodeIgniter and Prepare a database.
And this is for create your dummy database
CREATE TABLE IF NOT EXISTS `employees` ( `employeeNumber` int(11) NOT NULL AUTO_INCREMENT, `lastName` varchar(50) NOT NULL, `firstName` varchar(50) NOT NULL, `extension` varchar(10) NOT NULL, `email` varchar(100) NOT NULL, `officeCode` varchar(10) NOT NULL, `file_url` varchar(250) CHARACTER SET utf8 NOT NULL, `jobTitle` varchar(50) NOT NULL, PRIMARY KEY (`employeeNumber`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1703 ; INSERT INTO `employees` (`employeeNumber`, `lastName`, `firstName`, `extension`, `email`, `officeCode`, `file_url`, `jobTitle`) VALUES (1002, 'Murphy', 'Diane', 'x5800', 'dmurphy@classicmodelcars.com', '1', '', 'President'), (1056, 'Patterson', 'Mary', 'x4611', 'mpatterso@classicmodelcars.com', '1', '', 'VP Sales'), (1076, 'Firrelli', 'Jeff', 'x9273', 'jfirrelli@classicmodelcars.com', '1', '', 'VP Marketing'), (1088, 'Patterson', 'William', 'x4871', 'wpatterson@classicmodelcars.com', '6', '', 'Sales Manager (APAC)'), (1102, 'Bondur', 'Gerard', 'x5408', 'gbondur@classicmodelcars.com', '4', 'pdftest.pdf', 'Sale Manager (EMEA)'), (1143, 'Bow', 'Anthony', 'x5428', 'abow@classicmodelcars.com', '1', '', 'Sales Manager (NA)'), (1165, 'Jennings', 'Leslie', 'x3291', 'ljennings@classicmodelcars.com', '1', '', 'Sales Rep'), (1166, 'Thompson', 'Leslie', 'x4065', 'lthompson@classicmodelcars.com', '1', '', 'Sales Rep'), (1188, 'Firrelli', 'Julie', 'x2173', 'jfirrelli@classicmodelcars.com', '2', 'test-2.pdf', 'Sales Rep'), (1216, 'Patterson', 'Steve', 'x4334', 'spatterson@classicmodelcars.com', '2', '', 'Sales Rep'), (1286, 'Tseng', 'Foon Yue', 'x2248', 'ftseng@classicmodelcars.com', '3', '', 'Sales Rep'), (1323, 'Vanauf', 'George', 'x4102', 'gvanauf@classicmodelcars.com', '3', '', 'Sales Rep'), (1337, 'Bondur', 'Loui', 'x6493', 'lbondur@classicmodelcars.com', '4', '', 'Sales Rep'), (1370, 'Hernandez', 'Gerard', 'x2028', 'ghernande@classicmodelcars.com', '4', '', 'Sales Rep'), (1401, 'Castillo', 'Pamela', 'x2759', 'pcastillo@classicmodelcars.com', '4', '', 'Sales Rep'), (1501, 'Bott', 'Larry', 'x2311', 'lbott@classicmodelcars.com', '7', '', 'Sales Rep'), (1504, 'Jones', 'Barry', 'x102', 'bjones@classicmodelcars.com', '7', '', 'Sales Rep'), (1611, 'Fixter', 'Andy', 'x101', 'afixter@classicmodelcars.com', '6', '', 'Sales Rep'), (1612, 'Marsh', 'Peter', 'x102', 'pmarsh@classicmodelcars.com', '6', '', 'Sales Rep'), (1619, 'King', 'Tom', 'x103', 'tking@classicmodelcars.com', '6', '', 'Sales Rep'), (1621, 'Nishi', 'Mami', 'x101', 'mnishi@classicmodelcars.com', '5', '', 'Sales Rep'), (1625, 'Kato', 'Yoshimi', 'x102', 'ykato@classicmodelcars.com', '5', '', 'Sales Rep'), (1702, 'Gerard', 'Martin', 'x2312', 'mgerard@classicmodelcars.com', '4', '', 'Sales Rep');
So make sure that you have your database settings there. For example:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); /** * CodeIgniter * * An open source application development framework for PHP 5.1.6 or newer ... mpla mpla mpla */ $active_group = 'default'; $active_record = TRUE; $db['default']['hostname'] = 'localhost'; $db['default']['username'] = ''; //enter your database username $db['default']['password'] = ''; //enter your database password $db['default']['database'] = ''; //enter your database Name $db['default']['dbdriver'] = 'mysql'; $db['default']['dbprefix'] = ''; $db['default']['pconnect'] = TRUE; $db['default']['db_debug'] = TRUE; $db['default']['cache_on'] = FALSE; $db['default']['cachedir'] = ''; $db['default']['char_set'] = 'utf8'; $db['default']['dbcollat'] = 'utf8_general_ci'; $db['default']['swap_pre'] = ''; $db['default']['autoinit'] = TRUE; $db['default']['stricton'] = FALSE; $db['default']['failover'] = array(); /* End of file database.php */ /* Location: ./application/config/database.php */
The third step
Let's create our first controller. Let's name our first controller Main. So to do that, you will go to your_project/application /controllers/ and add the main.php , that will look like this:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Main extends CI_Controller { function __construct() { parent::__construct(); $this->load->database(); } public function index() { echo "<h1>Welcome to the world of Codeigniter</h1>";//Just an example to ensure that we get into the function die(); } } /* End of file main.php */ /* Location: ./application/controllers/main.php */
The fourth step
To make sure that everything works fine, you have to go to http://localhost/your_project/index.php/main and see the message:
Welcome to the world of Codeigniter.
The fifth step
Make sure that you have installed grocery CRUD correctly at your project by adding all the files and folders to your project. After the end of your installation, your project will have to look similar to this structure:
website_folder/
–––– application/
–––––––– config/
–––––––––––– autoload.php
–––––––––––– ...
–––––––––––– doctypes.php
–––––––––––– foreign_chars.php
–––––––––––– grocery_crud.php
–––––––––––– ...
–––––––– controllers/
–––––––––––– examples.php
–––––––––––– index.html
–––––––––––– welcome.php
–––––––– libraries/
–––––––––––– grocery_crud.php
–––––––––––– index.html
–––––––– models/
–––––––––––– grocery_crud_model.php
–––––––––––– index.html
–––––––– views/
–––––––––––– example.php
–––––––––––– index.html
–––––––––––– welcome_message.php
–––– assets/
–––––––– grocery_crud/
–––––––––––– css/
–––––––––––– js/
–––––––––––– texteditor/
–––––––––––– themes/
–––––––– uploads/
–––––––– index.html
–––– system/
–––– user_guide/
–––– change_log.txt
–––– example_database.sql
–––– index.php
–––– licence-grocery-crud.txt
–––– license.txt
Step six
Let's go to our controller and add some stuff to make grocery CRUD work. Add the method employees like the below example:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Main extends CI_Controller { function __construct() { parent::__construct(); /* Standard Libraries of codeigniter are required */ $this->load->database(); $this->load->helper('url'); /* ------------------ */ $this->load->library('grocery_CRUD'); } public function index() { echo "<h1>Welcome to the world of Codeigniter</h1>";//Just an example to ensure that we get into the function die(); } public function employees() { $this->grocery_crud->set_table('employees'); $output = $this->grocery_crud->render(); echo "<pre>"; print_r($output); echo "</pre>"; die(); } } /* End of file main.php */ /* Location: ./application/controllers/main.php */
If everything goes well and you don't have any errors or exceptions you will go to: http://localhost/your_project/index.php/main/employees and see the below result, then everything works correctly :
stdClass Object ( [output] => Your output will appear here.... [js_files] => Array ( [763b4d272e158bdb8ed5a12a1824c94f494954bd] => http://grocery_crud/public/grocery_crud/themes/datatables/js/jquery-1.6.2.min.js [0b677f3fc6fb25b4baf39eb144222116c5b60254] => http://grocery_crud/public/grocery_crud/themes/flexigrid/js/cookies.js [ec3ae62b8d5838972e858fe54447bd4bd8d79f88] => http://grocery_crud/public/grocery_crud/themes/flexigrid/js/flexigrid.js [2c0ff56d0cbc6f80a5ef9c770d478f0e00c3170d] => http://grocery_crud/public/grocery_crud/themes/flexigrid/js/jquery.form.js [474495ff1e895eab81fb8afba4db9b06c15b19af] => http://grocery_crud/public/grocery_crud/themes/flexigrid/js/jquery.numeric.js ) [css_files] => Array ( [732b03aa54d124f062757b71e5560acdc5632ba6] => http://grocery_crud/public/grocery_crud/themes/flexigrid/css/flexigrid.css ) )
Important Note: Please make sure that you don't have grocery
CRUD to the index function of your controller as it is a known issue
that it will not work on index. Just move it to another method. For
example "employees" or something else except index.The seventh step.
Now let's create our view. The results that we have seen we can use them to have grocery CRUD to our project. We just need a view to do it. So a view will look like this:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <?php foreach($css_files as $file): ?> <link type="text/css" rel="stylesheet" href="<?php echo $file; ?>" /> <?php endforeach; ?> <?php foreach($js_files as $file): ?> <script src="<?php echo $file; ?>"></script> <?php endforeach; ?> <style type='text/css'> body { font-family: Arial; font-size: 14px; } a { color: blue; text-decoration: none; font-size: 14px; } a:hover { text-decoration: underline; } </style> </head> <body> <!-- Beginning header --> <div> <a href='<?php echo site_url('examples/offices_management')?>'>Offices</a> | <a href='<?php echo site_url('examples/employees_management')?>'>Employees</a> | <a href='<?php echo site_url('examples/customers_management')?>'>Customers</a> | <a href='<?php echo site_url('examples/orders_management')?>'>Orders</a> | <a href='<?php echo site_url('examples/products_management')?>'>Products</a> | <a href='<?php echo site_url('examples/film_management')?>'>Films</a> </div> <!-- End of header--> <div style='height:20px;'></div> <div> <?php echo $output; ?> </div> <!-- Beginning footer --> <div>Footer</div> <!-- End of Footer --> </body> </html>
So let's save this file into: your_project/application/views/our_template.php and go to our controller and add some more stuff.
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Main extends CI_Controller { function __construct() { parent::__construct(); /* Standard Libraries of codeigniter are required */ $this->load->database(); $this->load->helper('url'); /* ------------------ */ $this->load->library('grocery_CRUD'); } public function index() { echo "<h1>Welcome to the world of Codeigniter</h1>";//Just an example to ensure that we get into the function die(); } public function employees() { $this->grocery_crud->set_table('employees'); $output = $this->grocery_crud->render(); $this->_example_output($output); } function _example_output($output = null) { $this->load->view('our_template.php',$output); } } /* End of file main.php */ /* Location: ./application/controllers/main.php */
Now go to http://localhost/your_project/index.php/main/employees and you will see a result like this:
Very easy and simple to make a crud. Now it's time to use on any of your projects. You can see the documentation from Grocery CRUD complete in its web. Hopefully my tutorial can help you in learning CRUD.
learn more about codeigniter follow this link
Subscribe to:
Post Comments
(
Atom
)
No comments :
Post a Comment