2013-04-08 6 views
11

मेरे कोडइग्निटर नियंत्रक कार्यों में से एक इसकी कार्यक्षमता के हिस्से के रूप में एक पुनरावर्ती कार्य को कॉल करने की आवश्यकता है। फंक्शन कॉल चोक करता है अगर मैं इसे नियंत्रक वर्ग के अंदर रखता हूं, और यदि मैं कक्षा के बाहर रखता हूं तो यह डेटाबेस फ़ंक्शंस ($this->db->get()) तक नहीं पहुंच सकता है। क्या यह एक सहायक कार्य करेगा इस समस्या को ठीक करेगा?क्या कोडइग्निटर हेल्पर फ़ंक्शंस डेटाबेस फ़ंक्शंस का उपयोग कर सकता है?

+0

मिल सकता है कृपया अपने नियंत्रक कोड पोस्ट। –

+0

क्यों न केवल मॉडल का उपयोग करें? यही वह जगह है जहां आपके डीबी इंटरैक्शन को वैसे भी जाना है। –

उत्तर

29

आप उदाहरण प्राप्त कर सकते हैं:

$CI =& get_instance(); 

उसके बाद आप प्रश्नों के लिए $CI->db उपयोग करने के लिए सक्षम हो जाएगा ..

+0

शानदार, थोड़ी सी पठन के बाद जो मैं खोज रहा हूं। – Rorrik

+0

इसे क्यों वोट दिया गया है? कृपया हमें बताएं कि इसमें क्या गलत है। –

5

आप पुस्तकालयों, सहायकों में $ इस, और उपयोग सभी तरीकों का उपयोग करना चाहते हैं :

$this->ci =& get_instance(); 
    $this->ci->load->database(); 

तुम भी कर सकते हैं:

$this->ci->config->item('languages'); 

या

$this->ci->load->library('session'); 
+1

अधिक जानकारी: http://stackoverflow.com/a/2819775/1171049 – Sangar82

+0

यह एक महान धागा है, यह बताता है कि get_instance() का उपयोग कैसे करें जब आप जानते हैं कि आप get_instance() का उपयोग करना चाहते हैं। – Rorrik

-1
//Select Data: 

$this->db->select(‘fieldname seperated by commas’); 

$this->db->from(‘table’); 

$query = $this->db->get(); 

$results=$query->result() ; 

//Joins: 

$this->db->select(‘*’); 
$this->db->from(‘table1′); 
$this->db->join(‘table2′, ‘table2.id = table1.id’); 

$query = $this->db->get(); 

हम इसे से http://skillrow.com/codeignitor-database-functions/

संबंधित मुद्दे