How to Delete Data From Database in Codeigniter Using Ajax

आज के इस tutorial में हम आपको बतायेंगे की database से data को Codeigniter और Ajax का इस्तेमाल करके कैसे डिलीट करें? – How to delete data from the database in CodeIgniter using Ajax (Hindi).

पिछले tutorial में हमने बताया था की CodeIgniter में Ajax का इस्तेमाल करके database में data को कैसे update करें – How to update data in a database in CodeIgniter using Ajax?

Contents

  • 1 How to delete data from the database in CodeIgniter using Ajax (Hindi)?
    • 1.1 My_Controller.php
    • 1.2 Ajax_Model.php
    • 1.3 index.php
      • 1.3.1 Workflow of Data Deletion
    • 1.4 Conclusion and Final Words

How to delete data from the database in CodeIgniter using Ajax (Hindi)?

Database से किसी भी प्रकार का data delete करने से पहले हमें ये जरुर ध्यान रखना चाहिए की वो data हमारे काम का नहीं है| अगर आप एक developer हैं और आप एक software बना रहे हैं जैसे मान लीजिये की आप एक School management का software बना रहे हैं तो एक बात का हमेशा ध्यान रखें की data को कभी भी डिलीट ना करें उसके जगह पर आप उसमें एक Field और add कर लें जिसका नाम status रखें और उसे Activate और Deactivate कर दें ताकि बाद में उस data को recall किया जा सके|

मैं यह tutorial उन लोगो के लिए बना रहा हूँ जो की data delete करने के लिए Coding सीखना चाहते हैं|

इस tutorial में generally हम Models, Views और Controllers के code add करेंगे बाकि के coding का link हम आपको दे देंगे आप वहाँ से download कर सकते हैं| तो चलिए tutorial की शुरुआत करते हैं और जानते हैं की database से data को Codeigniter और Ajax का इस्तेमाल करके कैसे डिलीट करें? – How to delete data from the database in CodeIgniter using Ajax (Hindi).

delete-data-process
delete data process

My_Controller.php

यह एक controller file है जो की controllers folder के अन्दर available है| इसमें मैंने एक deleteSingleData() नाम का method बनाया है जिसमें हम data को डिलीट करने का काम कर रहे हैं|

            <?php defined('BASEPATH') OR exit('No direct script access allowed');  class MY_Controller extends CI_Controller {  	public function __construct() 	{ 		parent::__construct(); 		$this->load->model('ajax_model'); 	}  	public function index() 	{ 		$this->load->view('index'); 	}  	public function create() 	{ 		$name = $this->input->post('name'); 		$message = $this->input->post('message'); 		$age = $this->input->post('age');  		$data = array( 			'name'	=> $name, 			'message' => $message, 			'age'	=> $age, 		); 		$insert = $this->ajax_model->createData($data); 		echo json_encode($insert); 	}  	public function fetchDatafromDatabase() 	{ 		$resultList = $this->ajax_model->fetchAllData('*','person',array()); 		 		$result = array(); 		$button = ''; 		$i = 1; 		foreach ($resultList as $key => $value) {  			$button = '<a class="btn-sm btn-success text-light" onclick="editFun('.$value['id'].')" href="#"> Edit</a> ';  			$button .= ' <a class="btn-sm btn-danger text-light" onclick="deleteFun('.$value['id'].')" href="#"> Delete</a>';  			$result['data'][] = array( 				$i++, 				$value['name'], 				$value['message'], 				$value['age'], 				$button 			); 		} 		echo json_encode($result); 	}  	public function getEditData() 	{ 		$id = $this->input->post('id'); 		$resultData = $this->ajax_model->fetchSingleData('*','person',array('id'=>$id)); 		echo json_encode($resultData); 	} 	  	public function update() 	{ 		$id = $this->input->post('id'); 		$name = $this->input->post('name'); 		$message = $this->input->post('message'); 		$age = $this->input->post('age');  		$data = array( 			'name'	=> $name, 			'message' => $message, 			'age'	=> $age, 		); 		$update = $this->ajax_model->updateData('person',$data,array('id'=>$id)); 		if($update==true) 		{ 			echo 1; 		} 		else{ 			echo 2; 		} 	}  	public function deleteSingleData() 	{ 		$id = $this->input->post('id'); 		$dataDelete = $this->ajax_model->deleteData('person',array('id'=>$id)); 		if($dataDelete==true) 		{ 			echo 1; 		} 		else 		{ 			echo 2; 		} 	} }          

Ajax_Model.php

यह एक Model file है जो की Models folder के अन्दर available है| इसमें हमने एक deleteData($tablename, $where) नाम का एक method बनाया है और उसमें दो parameter pass किया है| पहला parameter table name है जिसमें हम table का नाम देंगे और दुसरे parameter में condition है जिसमें हम वो condition लिखेंगे जिसके base पर हमें data डिलीट करना है|

            <?php   class Ajax_model extends CI_Model { 	public function createData($data) 	{ 		$query = $this->db->insert('person',$data); 		return $query; 	}  	public function fetchAllData($data,$tablename,$where) 	{ 		$query = $this->db->select($data) 						->from($tablename) 						->where($where) 						->get(); 		return $query->result_array(); 	}  	public function fetchSingleData($data,$tablename,$where) 	{ 		$query = $this->db->select($data) 						->from($tablename) 						->where($where) 						->get(); 		return $query->row_array(); 	}  	public function updateData($tablename, $data, $where) 	{ 		$query = $this->db->update($tablename,$data,$where); 		return $query; 	}  	public function deleteData($tablename,$where) 	{ 		$query = $this->db->delete($tablename,$where); 		return $query; 	} }          

index.php

यह एक view file है जो की user के browser में display होता है| इसमें मैंने एक deleteFun(id) नाम का JavaScript function बनाया है और उसमें parameter के तौर पर id pass किया है| इसमें उस id को pass किया है जिस data को हमें डिलीट करना है यह function tab कॉल होगा जब हम Delete button पर click करेंगे|

                          <!DOCTYPE html> <html> <head> 	<title></title> 	<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css"> 	<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">  </head> <body> 	<div class="container"> 		 		<br><br> 		<!-- Button trigger modal --> 		<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#createModal"> 		  Add Record 		</button><br><br>   		<form id="createForm"> 			<!-- Modal --> 			<div class="modal fade" id="createModal" aria-hidden="true"> 				<div class="modal-dialog" role="document"> 				    <div class="modal-content"> 						<div class="modal-header"> 							<h5 class="modal-title" id="exampleModalLongTitle">Add Record</h5> 							<button type="button" class="close" data-dismiss="modal" aria-label="Close"> 						  	<span aria-hidden="true">&times;</span> 							</button> 						</div> 				      	<div class="modal-body"> 				        	<div class="form-group"> 							    <label>Name</label> 							    <input type="text" class="form-control" placeholder="Name here" name="name"> 							</div> 							<div class="form-group"> 								<label>Message</label> 							    <input type="text" class="form-control" placeholder="Message Here" name="message"> 							</div> 							<div class="form-group"> 							    <label>Age</label> 							    <input type="number" class="form-control" placeholder="Age Here" name="age"> 							</div> 				      	</div> 				      	<div class="modal-footer"> 				        	<button type="button" class="btn btn-secondary pull-left" data-dismiss="modal">Close</button> 				        	<button type="submit" class="btn btn-primary">Save</button> 				      	</div> 				    </div> 				</div> 			</div> 		</form>  		<table id="example1" class="display table"> 		    <thead> 		        <tr> 		            <th>S.No</th> 		            <th>Name</th> 		            <th>Message</th> 		            <th>Age</th> 		            <th>Action</th> 		        </tr> 		    </thead> 		</table> 	</div>   <!-- edit modal --> 	<div class="modal fade" id="editModal" aria-hidden="true"> 	  	<div class="modal-dialog" role="document"> 		    <div class="modal-content"> 		      	<div class="modal-header"> 		        	<h5 class="modal-title">Edit Record</h5> 		        	<button type="button" class="close" data-dismiss="modal" aria-label="Close"> 		          		<span aria-hidden="true">&times;</span> 		        	</button> 		      	</div> 		      	<form id="editForm"> 			      	<div class="modal-body"> 			      		<input type="hidden" name="id" id="editID"> 		        		<div class="form-group"> 						    <label>Name</label> 						    <input type="text" class="form-control" placeholder="Name here" name="name" id="editName"> 						</div> 						<div class="form-group"> 						    <label>Message</label> 						    <input type="text" class="form-control" placeholder="Message Here" name="message" id="editMessage"> 						</div> 						<div class="form-group"> 						    <label>Age</label> 						    <input type="number" class="form-control" placeholder="Age Here" name="age" id="editAge"> 						</div> 			      	</div> 			      	<div class="modal-footer"> 			        	<button type="button" class="btn btn-secondary pull-left" data-dismiss="modal">Close</button> 			        	<button type="submit" class="btn btn-primary">Update</button> 			      	</div> 			  	</form> 		    </div> 	  	</div> 	</div>  <!--edit modal end-->  	<script type="text/javascript" src="https://code.jquery.com/jquery-3.3.1.min.js"></script> 	<script type="text/javascript" src="https://cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js"></script> 	<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script> 	<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>   	<script type="text/javascript"> 	 		//inserting data into database code start here  		$("#createForm").submit(function(event) { 			event.preventDefault(); 			$.ajax({ 	            url: "<?php echo base_url('my_controller/create'); ?>", 	            data: $("#createForm").serialize(), 	            type: "post", 	            async: false, 	            dataType: 'json', 	            success: function(response){ 	               	                $('#createModal').modal('hide'); 	                $('#createForm')[0].reset(); 	                alert('Successfully inserted'); 	               $('#example1').DataTable().ajax.reload(); 	              }, 	           error: function() 	           { 	            alert("error"); 	           }           }); 		});  		//inserting data into database code end here   		//displaying data on page start here 		$(document).ready(function(){ 			$('#example1').DataTable({ 				"ajax" : "<?php echo base_url('my_controller/fetchDatafromDatabase'); ?>", 				"order": [], 			}); 		}); 		//displaying data on page end here   		//edit function start here 		function editFun(id) 		{ 			$.ajax({ 				url: "<?php echo base_url('my_controller/getEditData'); ?>", 				method:"post", 				data:{id:id}, 				dataType:"json", 				success:function(response) 				{ 					$('#editID').val(response.id); 					$('#editName').val(response.name); 					$('#editMessage').val(response.message); 					$('#editAge').val(response.age); 					$('#editModal').modal({ 						backdrop:"static", 						keyboard:false 					}); 				} 			}) 		}   		$("#editForm").submit(function(event) { 			event.preventDefault(); 			$.ajax({ 	            url: "<?php echo base_url('my_controller/update'); ?>", 	            data: $("#editForm").serialize(), 	            type: "post", 	            async: false, 	            dataType: 'json', 	            success: function(response){ 	               	                $('#editModal').modal('hide'); 	                $('#editForm')[0].reset(); 	                if(response==1) 	                { 	                	alert('Successfully updated'); 	                } 	                else{ 	                	alert('Updation Failed !'); 	                } 	               $('#example1').DataTable().ajax.reload(); 	              }, 	           error: function() 	           { 	            alert("error"); 	           }           }); 		});  		//edit function work end here  		//delete function start here 		function deleteFun(id) 		{ 			if(confirm('Are you sure?')==true) 			{ 				$.ajax({ 					url:'<?php echo base_url('my_controller/deleteSingleData'); ?>', 					method:"post", 					dataType:"json", 					data:{id:id}, 					success:function(response) 					{ 						if(response==1) 						{ 							alert('Data Deleted Successfully'); 							$('#example1').DataTable().ajax.reload(); 						} 						else 						{ 							alert('Deletion Failed !'); 						} 					} 				}) 			} 		} 		//delete function end here 	</script> </body> </html>          

Code Download Link: Download Here

Workflow of Data Deletion

अब हम थोडा आपको बता देते हैं की data deletion कैसे काम कर रहा है| जब हम किसी particular data के डिलीट button पर click करते हैं तो उसका id के साथ JavaScript का delete function कॉल होता है और उसके अनुसार फिर data Delete होने का process execute होता है| Details में समझने के लिए video tutorial को देखें| निचे दिया गया video tutorial ये बताता है की database से data को Codeigniter और Ajax का इस्तेमाल करके कैसे डिलीट करें? – How to delete data from the database in CodeIgniter using Ajax (Hindi).

Conclusion and Final Words

कभी भी important data को डिलीट न करें अगर delete करते हैं तो उससे पहले ये check कर लें की वो आपके काम का नहीं है| अगर आप एक developer हैं तो आप डिलीट के function में confirmation message जरुर दें ताकि user गलती से data delete ना कर पाए| कई बार ऐसा होता है की गलती से mouse click हो जाता है और data delete हो जाता है लेकिन अगर confirmation message रहेगा तो गलती से data डिलीट होने के chances कम हो जायेंगे|

तो मैंने इस tutorial में बताया की database से data को Codeigniter और Ajax का इस्तेमाल करके कैसे डिलीट करें? – How to delete data from the database in CodeIgniter using Ajax (Hindi). मुझे उम्मीद है यह tutorial आपके लिए helpful रही होगी|

How to Delete Data From Database in Codeigniter Using Ajax

Source: https://www.guptatreepoint.com/delete-data-from-database-in-codeigniter-using-ajax/

0 Response to "How to Delete Data From Database in Codeigniter Using Ajax"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel