Title
In this example, we will discuss how to delete a record or data from the MySQL database using the CodeIgniter.
Controller: User.php app/Controllers/User.php
Model: UserModel.php app/Models/UserModel.php
View: list.php app/Views/list.php
/app/Config/Routes.php
$routes->add('user/list', 'User::list');
$routes->get('user/delete/(:num)', 'User::delete/$1');
/app/Controllers/User.php
<?php
namespace App\Controllers;
use App\Models\UserModel;
class User extends BaseController {
public function __construct() {
$db = db_connect();
$this->userModel = new UserModel($db);
}
public function add() {
$this->load->view('add');
}
public function list() {
$data['result'] = $this->userModel->list();
echo view('list', $data);
}
public function delete($id) {
$result = $this->userModel->delete($id);
if($result) {
echo "User record is deleted successfully.";
} else {
echo "Something went wrong";
}
}
}
/app/Models/UserModel.php
<?php
namespace App\Models;
use CodeIgniter\Model;
use CodeIgniter\Database\ConnectionInterface;
class UserModel extends Model {
protected $db;
public function __construct(ConnectionInterface &$db) {
$this->db =& $db;
}
public function list() {
return $this->db
->table('user_info')
->get()
->getResult();
}
public function delete($id) {
return $this->db
->table('user_info')
->where(["id" => $id])
->delete();
}
}
app/Views/list.php
<table width="600" border="1" cellspacing="5" cellpadding="5">
<tr style="background:#CCC">
<th>Sr No</th>
<th>First_name</th>
<th>Last_name</th>
<th>Email Id</th>
<th>Delete</th>
</tr>
<?php $i=1; foreach($result as $row) {
echo "<tr>";
echo "<td>".$i. "</td>";
echo "<td>".$row->first_name."</td>";
echo "<td>".$row->last_name."</td>";
echo "<td>".$row->email."</td>";
echo "<td><a href="<?php echo base_url('user/delete'.$row->id) ?>">Delete</a></td>";
echo "</tr>"; $i++; } ?>
</table>