हेलो दोस्तों इस ब्लॉग पोस्ट(CodeIgniter Database Connection In Hindi) में हम आपको बताएँगे कि कैसे आप CodeIgniter में डेटाबेस connectivity करते है और अपनी एप्लीकेशन कोड को डेटाबेस से इंटरैक्ट करते है |
जैसे कि कोई और एप्लीकेशन अथवा फ्रेमवर्क में हमें अक्सर डेटाबेस से interaction की जरुरत होती है वैसे ही कोडिगनिटेर में भी हमें डेटाबेस से इंटरेक्शन करना पड़ता है |CodeIgniter Database Connection In Hindi|
पर CodeIgniter इस काम को हमारे लिए बहुत आसान कर देता है | CodeIgniter के पास Database से interaction के लिए बहुत सारी अच्छी functionality होती है |CodeIgniter Database Connection In Hindi|
इन section में हम देखेंगे कि CodeIgniter में CRUD (Create , read , update , Delete) functions कैसे काम करते है |
इसके लिए हम stud table का उपयोग करेंगे जिसमे हम insert , update , read , और delete operation को परफॉर्म करेंगे|CodeIgniter Database Connection In Hindi|
Connecting to a Database :
CodeIgniter में हम Database से कुछ इस तरह से connect कर सकते है :
Automatic Connecting − यहाँ पर हम application /config /autoload.php फाइल की मदद से Connection को automatic कर सकते है |
Automatic Connection से डेटाबेस जो है वो हर एक पेज के लिए लोड हो जायेगा |
बस इसको use करने के लिए हमें सिर्फ डेटाबेस लाइब्रेरी को add करना होगा जो नीचे दी गयी है |
$autoload['libraries'] = array(‘database’);
Manual Connecting − अगर आप कुछ पेज के लिए डेटाबेस connectivity को चाहते है तो फिर हम मैन्युअल कनेक्शन को choose कर सकते है |
हम किसी भी क्लास में निम्नलिखित लाइन्स को लिखकर डेटाबेस को manually connect कर सकते है |
$this->load->database();
यहाँ पर आप देख सकते है कि हम कोई भी argument को पास नहीं कर रहे है |
क्योकि हमने सभी कुछ Database config file (application /Database /Database.php) में set कर दिया है |
Inserting a Record :
Database में कोई भी रिकॉर्ड को insert करने के लिए हम insert () फंक्शन का use करते है जैसे कि नीचे दी गयी टेबल में दिखाया गया है |
नीचे दिया गया example शो करता है कि कैसे हम stud टेबल में record को इन्सर्ट करते है |
यहाँ पर $data जो है वो एक array है जिसमे सभी वैल्यू अथवा डाटा सेट होगा और stud टेबल में insert होगा |
बस हमें सिर्फ इतना करना है की इस array को हमें insert फंक्शन में पास करना है सेकंड argument की जगह पर |
$data = array(
'roll_no' => ‘1’,
'name' => ‘Virat’
);
$this->db->insert("stud", $data);
Updating a record :
डेटाबेस में किसी भी रिकॉर्ड को अपडेट करने के लिए हम update फंक्शन का उपयोग करते है|
और इसके साथ ही हम set () और where () फंक्शन का उपयोग करते है जैसे कि आप नीचे दी हुई टेबल में देख सकते है |
Set () function जो है वो अपडेट होने वाले डाटा को सेट करता है |
$data = array(
'roll_no' => ‘1’,
'name' => ‘Virat’
);
$this->db->set($data);
$this->db->where("roll_no", ‘1’);
$this->db->update("stud", $data);
Deleting a record :
किसी भी टेबल से डाटा को डिलीट करने के लिए हम delete () function का उपयोग करते है जैसे कि निचे टेबल में दिखाया गया है |
आप इस कोड को stud table में से डाटा डिलीट करने के लिए उपयोग कर सकते है |
इसमें जो first argument है वो टेबल का नाम represent करता है|
और जो second argument है वो exactly record को बता रहा है जो डिलीट करना है |
$this->db->delete("stud", "roll_no = 1");
Selecting a Record:
किसी भी डेटाबेस से रिकॉर्ड को सेलेक्ट करने के लिए हम get () function का उपयोग करते है|
जैसे कि नीचे दी हुई table में दिखाया गया है :
इस कोड का उपयोग हम डेटाबेस से रिकार्ड्स को प्राप्त करने के लिए करते है |
जो पहला स्टेटमेंट है वो स्टड टेबल से रिकार्ड्स को fetch करके object को return करता है |
और यह object एक $query object में स्टोर होता है |
और फिर सेकंड स्टेटमेंट में रिजल्ट function कॉल होता है जो कि $query object में से डाटा को निकलकर एक array के फॉर्म में रख देता है |
$query = $this->db->get("stud");
$data['records'] = $query->result();
Closing a Connection:
डेटाबेस कनेक्शन को हम manually close कर सकते है, नीचे दिए कोड को देखिये:
$this->db->close();
Example:
एक controller class Stud _controller.php को create करिये और इसे application /controller /Stud _controller.php में save करिये|
यहाँ पर हम आपको इस example में ऊपर samjhaye सारे operation को practically perform करके दिखा रहे है |
इसलिए इस example को execute करने से पहले हमें ऊपर दिया गया डेटाबेस और टेबल क्रिएट करनी है|
और डेटाबेस कॉन्फिग फाइल में कुछ necessary changes करने है जो कि application /config /Database.php में स्टोर है |
<?php
class Stud_controller extends CI_Controller {
function __construct() {
parent::__construct();
$this->load->helper('url');
$this->load->database();
}
public function index() {
$query = $this->db->get("stud");
$data['records'] = $query->result();
$this->load->helper('url');
$this->load->view('Stud_view',$data);
}
public function add_student_view() {
$this->load->helper('form');
$this->load->view('Stud_add');
}
public function add_student() {
$this->load->model('Stud_Model');
$data = array(
'roll_no' => $this->input->post('roll_no'),
'name' => $this->input->post('name')
);
$this->Stud_Model->insert($data);
$query = $this->db->get("stud");
$data['records'] = $query->result();
$this->load->view('Stud_view',$data);
}
public function update_student_view() {
$this->load->helper('form');
$roll_no = $this->uri->segment('3');
$query = $this->db->get_where("stud",array("roll_no"=>$roll_no));
$data['records'] = $query->result();
$data['old_roll_no'] = $roll_no;
$this->load->view('Stud_edit',$data);
}
public function update_student(){
$this->load->model('Stud_Model');
$data = array(
'roll_no' => $this->input->post('roll_no'),
'name' => $this->input->post('name')
);
$old_roll_no = $this->input->post('old_roll_no');
$this->Stud_Model->update($data,$old_roll_no);
$query = $this->db->get("stud");
$data['records'] = $query->result();
$this->load->view('Stud_view',$data);
}
public function delete_student() {
$this->load->model('Stud_Model');
$roll_no = $this->uri->segment('3');
$this->Stud_Model->delete($roll_no);
$query = $this->db->get("stud");
$data['records'] = $query->result();
$this->load->view('Stud_view',$data);
}
}
?>
अब एक मॉडल क्लास क्रिएट करिये Stud _Model.php और इसे application /Model /Stud _Model .php में save करिये |
<?php
class Stud_Model extends CI_Model {
function __construct() {
parent::__construct();
}
public function insert($data) {
if ($this->db->insert("stud", $data)) {
return true;
}
}
public function delete($roll_no) {
if ($this->db->delete("stud", "roll_no = ".$roll_no)) {
return true;
}
}
public function update($data,$old_roll_no) {
$this->db->set($data);
$this->db->where("roll_no", $old_roll_no);
$this->db->update("stud", $data);
}
}
?>
अब एक view फाइल क्रिएट करिये Stud _add.php और इसे application /Views /Stud _add .php से सेव करिये|
<!DOCTYPE html>
<html lang = "en">
<head>
<meta charset = "utf-8">
<title>Students Example</title>
</head>
<body>
<?php
echo form_open('Stud_controller/add_student');
echo form_label('Roll No.');
echo form_input(array('id'=>'roll_no','name'=>'roll_no'));
echo "<br/>";
echo form_label('Name');
echo form_input(array('id'=>'name','name'=>'name'));
echo "<br/>";
echo form_submit(array('id'=>'submit','value'=>'Add'));
echo form_close();
?>
</body>
</html>
अब एक व्यू फाइल और क्रिएट करिये Stud _edit.php और इसे application /view /Stud _edit.php से सेव करिये|
<!DOCTYPE html>
<html lang = "en">
<head>
<meta charset = "utf-8">
<title>Students Example</title>
</head>
<body>
<form method = "" action = "">
<?php
echo form_open('Stud_controller/update_student');
echo form_hidden('old_roll_no',$old_roll_no);
echo form_label('Roll No.');
echo form_input(array('id'⇒'roll_no',
'name'⇒'roll_no','value'⇒$records[0]→roll_no));
echo "
";
echo form_label('Name');
echo form_input(array('id'⇒'name','name'⇒'name',
'value'⇒$records[0]→name));
echo "
";
echo form_submit(array('id'⇒'sub mit','value'⇒'Edit'));
echo form_close();
?>
</form>
</body>
</html>
एक और व्यू फाइल Stud _view.php क्रिएट करिये और इसे application /views /Stud _view.php से save करिये|
<!DOCTYPE html>
<html lang = "en">
<head>
<meta charset = "utf-8">
<title>Students Example</title>
</head>
<body>
<a href = "<?php echo base_url(); ?>
index.php/stud/add_view">Add</a>
<table border = "1">
<?php
$i = 1;
echo "<tr>";
echo "<td>Sr#</td>";
echo "<td>Roll No.</td>";
echo "<td>Name</td>";
echo "<td>Edit</td>";
echo "<td>Delete</td>";
echo "<tr>";
foreach($records as $r) {
echo "<tr>";
echo "<td>".$i++."</td>";
echo "<td>".$r->roll_no."</td>";
echo "<td>".$r->name."</td>";
echo "<td><a href = '".base_url()."index.php/stud/edit/"
.$r->roll_no."'>Edit</a></td>";
echo "<td><a href = '".base_url()."index.php/stud/delete/"
.$r->roll_no."'>Delete</a></td>";
echo "<tr>";
}
?>
</table>
</body>
</html>
अब आपको कुछ changes route फाइल में करने है application /config /route.php में और नीचे दी गयी लाइन्स को कोड फाइल के अंत में लिखना है |
$route['stud'] = "Stud_controller";
$route['stud/add'] = 'Stud_controller/add_student';
$route['stud/add_view'] = 'Stud_controller/add_student_view';
$route['stud/edit/(\d+)'] = 'Stud_controller/update_student_view/$1';
$route['stud/delete/(\d+)'] = 'Stud_controller/delete_student/$1';
अब नीचे दिए गए URL का उपयोग करके आपको इस example को execute करना है | यहाँ पर yoursite .com को आप अपने URL से replace कर सकते है |
http://yoursite.com/index.php/stud
you can also go through a few more amazing blog posts by clicking the below blog links related to Codeigniter:
What is temp data in Codeigniter in Hindi…
FlashData In CodeIgniter In Hindi…
Session Management In CodeIgniter In Hindi…
Form Validation In CodeIgniter In Hindi…
Email Sending In CodeIgniter In Hindi…
CodeIgniter File Upload In Hindi…
Error Handling Techniques In CodeIgniter In Hindi…
What is CodeIgniter Libraries In Hindi…
CodeIgniter Database Connection In Hindi…
CodeIgniter Configuration In Hindi…
CodeIgniter Basic Concepts In Hindi…
CodeIgniter MVC Framework In Hindi…
CodeIgniter Application Architecture In Hindi…
CodeIgniter Installation In Hindi…
CodeIgniter Tutorial for Beginners in Hindi…
Conclusion:
तो दोस्तों इस ब्लॉग(CodeIgniter Database Connection In Hindi) में हमने CodeIgniter में Database से कैसे interact करते है यह सीखा | और इस ब्लॉग में हमने एक फुल example के साथ बहुत सारे ऑपरेशन को सीखा जैसे कि डाटा को get करना, डाटा को डिलीट करना, डाटा को अपडेट करना etc | CodeIgniter में आप दो तरीको से Database से interact कर सकते है | एक तो होता है automatically और दूसरा होता है manually | automatically में Database हर पेज के लिए अवेलेबल हो जाता है और मैन्युअली में कुछ specific pages जहाँ पर आप चाहते हो Database को include करना|
इस ब्लॉग(CodeIgniter Database Connection In Hindi) को लेकर आपके मन में कोई भी प्रश्न है तो आप हमें इस पते support@a5theory.comपर ईमेल लिख सकते है|
आशा करता हूँ, कि आपने इस पोस्ट(CodeIgniter Database Connection In Hindi) को खूब एन्जॉय किया होगा|
आप स्वतंत्रता पूर्वक अपना बहुमूल्य फीडबैक और कमेंट यहाँ पर दे सकते है|CodeIgniter Database Connection In Hindi|
आपका समय शुभ हो|