About Lesson
The INSERT INTO statement is used to insert new data to a MySQL table:
INSERT INTO table_name (column1, column2, column3,...) VALUES (value1, value2, value3,...)
1. SQL query to create a table in MySQL
CREATE TABLE user_info ( `id` int(11) NOT NULL, `first_name` varchar(30) NOT NULL, `last_name` varchar(30) NOT NULL, `email` varchar(30) NOT NULL, PRIMARY KEY (id) );
An insert() method accepts the associative array of data is passed into this method as the only parameter to create a new row of data in the database.
insert('table_name', 'array_of_object');
2. Copy and Paste the following lines in applications/config/autoload.php
$autoload['libraries'] = array('database'); $autoload['helper'] = array('url', 'form');
3. Create an add.php file in applications/views/ directory.
<!DOCTYPE html> <html> <head> <title>Add user</title> </head> <body> <form method="post" action="<?php echo base_url('user/save'); ?>"> <table width="600" border="1" cellspacing="5" cellpadding="5"> <tr> <td width="230">First Name</td> <td width="329"> <input type="text" name="txtFirstName" /> </td> </tr> <tr> <td>Last Name</td> <td> <input type="text" name="txtLastName" /> </td> </tr> <tr> <td>Email ID</td> <td> <input type="email" name="txtEmail" /> </td> </tr> <tr> <td colspan="2" align="center"> <input type="submit" name="btnAddUser" value="Add user" /> </td> </tr> </table> </form> </body> </html>
4. Create a model file User_model.php in the applications/models/ directory.
class User_model extends CI_Model {
/*Insert*/
function add($data) {
return $this->db->insert(‘user_info’, $data);
}
}
5. Create a controller file User.php in the applications/controllers/ directory.
class User extends CI_Controller { public function __construct() { /*call CodeIgniter's default Constructor*/ parent::__construct(); /*load model*/ $this->load->model('User_model'); } public function add() { $this->load->view(‘add’); } public function save() { $first_name = $this->input->post(‘txtLastName’); $last_name = $this->input->post(‘txtLastName’); $email = $this->input->post(‘txtEmail’); $data = [ ‘first_name’ => $first_name, ‘last_name’ => $last_name, ‘email’ => $email, ]; $result = $this->user_model->add($data); if($result) { echo “New user is registered successfully.”; } else { echo “Something went wrong”; } } }