Overview
In this example, I am going to show you how to insert data in the database using the CodeIgniter framework PHP.
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)
);
In CodeIgniter we use, insert() function to insert data into database.
Basic syntax:
insert('table_name', 'array_of_object');
Here, we are using 3 files for insert data into MySQL:
Controller: User.php application\controllers\User.php
Model: User_model.php application\models\User_model.php
View: add.php application\views\add.php
config/autoload.php
$autoload['libraries'] = array('database');
$autoload['helper'] = array('url', 'form');
applications/views/add.php
<!DOCTYPE html>
<html>
<head>
<title>Add user</title>
</head>
<body>
<form method="post" id="add-user-form" action="<?php echo base_url('user/add_user'); ?>">
<table width="600" border="1" cellspacing="5" cellpadding="5">
<tr>
<td width="230">First Name</td>
<td width="329">
<input type="text" name="txtFirstName" id="txtFirstName" />
</td>
</tr>
<tr>
<td>Last Name</td>
<td>
<input type="text" name="txtLastName" id="txtLastName" />
</td>
</tr>
<tr>
<td>Email ID</td>
<td>
<input type="email" name="txtEmail" id="txtEmail" />
</td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" name="btnAddUser" value="Add user" />
</td>
</tr>
</table>
</form>
<!-- Script -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$("#add-user-form").submit(function(e) {
var data = $("#add-user-form").serialize();
var url = "<?php echo base_url('user/add_user'); ?>";
// Syntax
// $(selector).post(URL,data,function(data,status,xhr),dataType);
$.post(
url,
data,
function(result) {
alert(result.message);
},
'json');
});
});
</script>
</body>
</html>
applications/controllers/User.php
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 add_user() {
$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 json_encode(["message" => "New user is registered successfully."]);
} else {
echo json_encode(["message" => "Something went wrong."]);;
}
}
}
applications/models/User_model.php
class User_model extends CI_Model {
/*Insert*/
function add($data) {
return $this->db->insert('user_info', $data);
}
}