Codeigniter

Data Insertion in CodeIgniter

In this tutorial we will learn about how to insert data into database in codeIgniter.
1.Create a database then configure your db credential in application/database.php

$active_group = 'default';
$query_builder = TRUE;
$db['default'] = array(
	'dsn'	=> '',
	'hostname' => 'localhost', // your hostname
	'username' => 'root', // your DB username
	'password' => '',     // DB password
	'database' => 'cidb', // your database name
	'dbdriver' => 'mysqli',
	'dbprefix' => '',
	'pconnect' => FALSE,
	'db_debug' => (ENVIRONMENT !== 'production'),
	'cache_on' => FALSE,
	'cachedir' => '',
	'char_set' => 'utf8',
	'dbcollat' => 'utf8_general_ci',
	'swap_pre' => '',
	'encrypt' => FALSE,
	'compress' => FALSE,
	'stricton' => FALSE,
	'failover' => array(),
	'save_queries' => TRUE
);

2. load some libraries and helpers in application/autoload.php

$autoload['libraries'] = array('database','session');
$autoload['helper'] = array('html','form');
  • Database library used for database related queries
  • Session library  used for display success / error message using flashdata.
  • Html Helper for used for link_tag
  • form helper used for form

First create a  view(registration.php) inside application/view folder

<?php echo form_open('registration',['name'=>'registration'])?>
<!---- Success Message ---->
<?php if ($this->session->flashdata('success')) { ?>
 <p style="color:red; font-size:16px; "><?php echo $this->session->flashdata('success'); ?></p>
<?php } ?>
<!---- Error Message ---->
<?php if ($this->session->flashdata('error')) { ?>
<p style="color:red; font-size:16px;"><?php echo $this->session->flashdata('error'); ?></p>
<?php } ?>
<p>
<?php echo form_label('Enter your Name', 'name'); ?>
<?php echo form_input(['name'=>'fullname','id'=>'fullname','placeholder'=>'Enter you full name','value'=>set_value('fullname')]);?>
<?php echo form_error('fullname',"<div style='color:red'>","</div>");?>
</p>
<p>
<?php echo form_label('Enter your Contact Mobile Number', 'mobnumber'); ?>
<?php echo form_input(['name'=>'mobnumber','id'=>'mobnumber','placeholder'=>'Enter your Contact Mobile Number','value'=>set_value('mobnumber')]);?>
<?php echo form_error('mobnumber',"<div style='color:red'>","</div>");?>
</p>
<p>
<?php echo form_label('Enter your Valid Email id', 'emailid'); ?>
<?php echo form_input(['name'=>'emailid','id'=>'emailid','placeholder'=>'Enter your Valid Email id','value'=>set_value('emailid')]);?>
<?php echo form_error('emailid',"<div style='color:red'>","</div>");?>
</p>
<p>
<?php echo form_label('Select gender','gender'); ?> :
<?php
$options=array(
'Male'=>'Male',
'Female'=>'Female',
'Other'=>'Other'
);
echo form_dropdown('gender',$options);?>
</p>
<p>
<?php echo form_label('Enter your address','address'); ?> <br />
<?php echo form_textarea(['name'=>'address','rows'=>'5','cols'=>'60','id'=>'address','class'=>'form-control','placeholder'=>'Enter your address','value'=>set_value('address')]);?>
<?php echo form_error('address',"<div style='color:red'>","</div>");?>
</p>
<p class="termcondtion">
<?php echo form_checkbox('TermsCondition','accept', TRUE); ?>
<?php echo form_label('Accept terms and conditions','terms'); ?>
</p>
<p class="login button">
<?php echo form_submit(['name'=>'submit','value'=>'Submit']);?>
</p>
</form>
<?php echo form_close();?>

Now create a controller (Registration.php) inside application/controller. You can also set your default controller in application/routes.php

$route['default_controller'] = 'Registration';
<?php
Class Registration extends CI_Controller{
public function index(){
//library form validation . you can also load this libray in application/autoload.php
$this->load->library('form_validation');
$this->form_validation->set_rules('fullname','Full Name','required');
$this->form_validation->set_rules('mobnumber','Mobile Number','required|numeric|exact_length[10]');
$this->form_validation->set_rules('emailid','Email id','required|valid_email');
$this->form_validation->set_rules('address','Address','required');
if($this->form_validation->run()){
$fname=$this->input->post('fullname');
$mnumber=$this->input->post('mobnumber');
$emaild=$this->input->post('emailid');
$gender=$this->input->post('gender');
$adress=$this->input->post('address');
$tc=$this->input->post('TermsCondition');
$this->load->model('Registration_Model');
$this->Registration_Model->insertdata($fname,$mnumber,$emaild,$gender,$adress,$tc);
}
else{
$this->load->view("registration");
}
}

Create a model (Registration_Model.php) inside application/model.

<?php
Class Registration_Model extends CI_Model{
public function insertdata($fname,$mnumber,$emaild,$gender,$adress,$tc){
$data=array(
			'fullName'=>$fname,
			'mobileNumber'=>$mnumber,
			'emailId'=>$emaild,
			'gender'=>$gender,
			'address'=>$adress,
			'termsCondition'=>$tc
		);
$sql_query=$this->db->insert('tblusers',$data);
if($sql_query){
$this->session->set_flashdata('success', 'Registration successful');
redirect('registration');
}
else{
$this->session->set_flashdata('error', 'Somthing went worng. Error!!');
redirect('registration');
}}
}

SQL Table structure for tblusers

CREATE TABLE `tblusers` (
  `id` int(11) NOT NULL,
  `fullName` varchar(150) DEFAULT NULL,
  `mobileNumber` char(12) DEFAULT NULL,
  `emailId` varchar(50) DEFAULT NULL,
  `gender` varchar(30) DEFAULT NULL,
  `address` mediumtext,
  `termsCondition` varchar(200) DEFAULT NULL,
  `postingDate` timestamp NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

View Demo———————————————–
View Demo How to run this script

  1. Download the zip file .
  2. Extract the zip and copy registrationci folder
  3. Paste in root directory(For xampp htdocs and for wamp www)
  4. Open your browser put http://localhost/phpmyadmin
  5. Create a database cidb
  6. Import sql file tblusers.sql
  7. Run your script http://localhost/registrationci

Data Insertion in CodeIgniter (Download full source code)
Size: 2.76 MB
Version: v 1

Recommended Tutorials for you


Related posts

CodeIgniter Interview Questions and Answers

Anuj Kumar

Active Record in CodeIgniter

Anuj Kumar

CodeIgniter Libraries

Anuj Kumar

CodeIgniter Controllers

Anuj Kumar

How to fetch data in CodeIgniter

Anuj Kumar

CodeIgniter Plugins

Anuj Kumar

Database interaction in CodeIgniter

Anuj Kumar

CodeIgniter View

Anuj Kumar

Form Validation in CodeIgniter

Anuj Kumar

Leave a Comment

* By using this form you agree with the storage and handling of your data by this website.

This site uses Akismet to reduce spam. Learn how your comment data is processed.