In this tutorial, We will inform you how to perform crud operation in CodeIgniter 4. Codeigniter 4 CRUD (Create Read Update Delete) Tutorial For Beginners.
if you want to create CRUD operation in CodeIgniter 4, so you can follow the below steps.
Overview
Step 1: Download Codeigniter
Step 2: Basic Configurations
Step 3: Create a Database in table
Step 4: Connect to Database
Step 5: Create Controller and Model
Step 6: Create Views Files
Step 7: Run The Application
Step 1: Download Codeigniter
If you want to download or install CodeIgniter 4 then you can below Url.
How To Install Codeigniter 4 Using Manual, Composer, Git
Step 2: Basic Configurations
If you want to Basic Configurations in your project then you can below Url.
Codeigniter 4 Removing Index.Php From Url
Step 3: Create a Database in table
In this step, We will create the database and table.
CREATE TABLE IF NOT EXISTS `students` ( `id` int(11) NOT NULL AUTO_INCREMENT, `first_name` varchar(64) NOT NULL, `last_name` varchar(64) NOT NULL, `address` text NOT NULL, `email` varchar(64) NOT NULL, `mobile` varchar(12) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=15 ;
Step 4: Connect to Database
Go to “app/Config/Database.php” folder and open database.php file some changes in this file like as hostname, database username, database password and database name.
public $default = [ 'DSN' => '', 'hostname' => 'localhost', 'username' => 'root', 'password' => '', 'database' => 'codeigniter4_crud', 'DBDriver' => 'MySQLi', 'DBPrefix' => '', 'pConnect' => false, 'DBDebug' => (ENVIRONMENT !== 'production'), 'cacheOn' => false, 'cacheDir' => '', 'charset' => 'utf8', 'DBCollat' => 'utf8_general_ci', 'swapPre' => '', 'encrypt' => false, 'compress' => false, 'strictOn' => false, 'failover' => [], 'port' => 3306, ];
Step 5: Create Controller and Model
In this step, we will a create “Student.php” controller and “StudentModel.php” model.
app/Controllers/Student.php
<?php namespace App\Controllers;
use CodeIgniter\Controller;
use App\Models\StudentModel;
class Student extends Controller
{
public function index()
{
$model = new StudentModel();
$data['students_detail'] = $model->orderBy('id', 'DESC')->findAll();
return view('list', $data);
}
public function create()
{
return view('add');
}
public function store()
{
helper(['form', 'url']);
$model = new StudentModel();
$data = [
'first_name' => $this->request->getVar('txtFname'),
'last_name' => $this->request->getVar('txtLname'),
'address' => $this->request->getVar('txtAddress'),
'email' => $this->request->getVar('txtEmail'),
'mobile' => $this->request->getVar('txtMobile'),
];
$save = $model->insert($data);
return redirect()->to( base_url('student') );
}
public function edit($id = null)
{
$model = new StudentModel();
$data['student'] = $model->where('id', $id)->first();
return view('edit', $data);
}
public function update()
{
helper(['form', 'url']);
$model = new StudentModel();
$id = $this->request->getVar('id');
$data = [
'first_name' => $this->request->getVar('txtFname'),
'last_name' => $this->request->getVar('txtLname'),
'address' => $this->request->getVar('txtAddress'),
'email' => $this->request->getVar('txtEmail'),
'mobile' => $this->request->getVar('txtMobile'),
];
$save = $model->update($id,$data);
return redirect()->to( base_url('student') );
}
public function delete($id = null){
$model = new StudentModel();
$data['user'] = $model->where('id', $id)->delete();
return redirect()->to( base_url('student') );
}
}
?>
app/Models/StudentModel.php
<?php namespace App\Models;
use CodeIgniter\Database\ConnectionInterface;
use CodeIgniter\Model;
class StudentModel extends Model
{
protected $table = 'Students';
protected $allowedFields = ['first_name','last_name','address','email', 'mobile'];
}
?>
Step 6: Create Views Files
Finally, we will create the list.php, add.php, and edit.php in the app/views directory.
app/views/list.php
<html>
<head>
<title>Codeigniter 4 CRUD (Create Read Update Delete) Tutorial For Beginners - XpertPhp</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script
</head>
<body>
<table border="1" align="center">
<tr>
<td colspan="5" align="right"><a href="<?php echo site_url('student/create') ?>">Add</a></td>
</tr>
<tr>
<td>First Name</td>
<td>Last Name</td>
<td>Email</td>
<td>Mobile</td>
<td>Action</td>
</tr>
<?php
foreach($students_detail as $sd){
?>
<tr>
<td><?php echo $sd['first_name']; ?></td>
<td><?php echo $sd['last_name']; ?></td>
<td><?php echo $sd['email']; ?></td>
<td><?php echo $sd['mobile']; ?></td>
<td><a href="<?php echo base_url(); ?>/student/edit/<?php echo $sd['id']; ?>">Edit</a> <a href="<?php echo base_url(); ?>/student/delete/<?php echo $sd['id']; ?>">Delete</a></td>
</tr>
<?php
}
?>
</table>
</body>
</html>
app/views/add.php
<form method="post" name="frmAdd" action="<?php echo site_url('student/store');?>">
<table align="center">
<tr>
<td colspan="2" align="center">Add Record</td>
</tr>
<tr>
<td>First Name</td>
<td><input type="text" name="txtFname"> </td>
</tr>
<tr>
<td>Last Name</td>
<td><input type="text" name="txtLname"> </td>
</tr>
<tr>
<td>Address</td>
<td><textarea name="txtAddress" rows="4" cols="16"></textarea> </td>
</tr>
<tr>
<td>Email</td>
<td><input type="text" name="txtEmail"> </td>
</tr>
<tr>
<td>Mobile</td>
<td><input type="text" name="txtMobile"> </td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Add" name="btnadd"> </td>
</tr>
</table>
</form>
app/views/edit.php
<form method="post" name="frmEdit" action="<?php echo base_url('student/update');?>">
<table align="center">
<tr>
<td colspan="2" align="center">Edit Record</td>
</tr>
<input type="hidden" name="id" class="form-control" id="id" value="<?php echo $student['id'] ?>">
<tr>
<td>First Name</td>
<td><input type="text" name="txtFname" value="<?php echo $student['first_name']; ?>"> </td>
</tr>
<tr>
<td>Last Name</td>
<td><input type="text" name="txtLname" value="<?php echo $student['last_name']; ?>"> </td>
</tr>
<tr>
<td>Address</td>
<td><textarea name="txtAddress" rows="4" cols="16"><?php echo $student['address']; ?></textarea> </td>
</tr>
<tr>
<td>Email</td>
<td><input type="text" name="txtEmail" value="<?php echo $student['email']; ?>"> </td>
</tr>
<tr>
<td>Mobile</td>
<td><input type="text" name="txtMobile" value="<?php echo $student['mobile']; ?>"> </td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="Edit" name="btnEdit"> </td>
</tr>
</table>
</form>
Step 7: Run The Application
Now we will run our example using the below Url in the browser.
http://localhost/codeigniter4_crud/student
We think would you like this article, so you can click on the “Download” button and you can download this demo article.
The post Codeigniter 4 CRUD (Create Read Update Delete) Tutorial For Beginners appeared first on XpertPhp.