2012-11-10 18 views
8

order_by get_where मैं बहुत तरह get_where और order_by उपयोग करने के लिए tring हूँ ...CodeIgniter

$query = $this->db->get_where($this->tbl_name, $where)->order_by('birth_date', 'ASC'); 

लेकिन यह त्रुटि आई ...

Fatal error: Call to undefined method CI_DB_mysql_result::order_by() in C:\xampp\htdocs\OAWA\application\models\Member_model.php on line 82 

मैं गलत क्या कर रहा हूँ?

+0

कोड इग्निटर का आप किस संस्करण का उपयोग करते हैं? दस्तावेज़ कहता है: 'नोट: order_by() को पहले ऑर्डरबी() के रूप में जाना जाता था, जिसे हटा दिया गया है। –

+0

नवीनतम एक – user979331

+0

मुझे लगता है कि आप चाहते हैं कि आप कहां चाहते हैं - - कहां()' और नहीं '-> get_where() ' । कम से कम, मैं इसे आज़मा दूंगा। – sberry

उत्तर

30

कोडइग्निटर के सक्रिय रिकॉर्ड में, प्रत्येक विधि get और get_where को छोड़कर ऑब्जेक्ट स्वयं (जो विधि श्रृंखला को अनुमति देती है) देता है जो परिणाम सेट को वापस कर देता है।

इस प्रकार, तुम क्या करने की आवश्यकता है:

$query = $this->db->order_by('birth_date', 'ASC')->get_where($this->tbl_name, $where); 

अर्थात get_where() कॉल पिछले एक होने की जरूरत है। यह परिणाम सेट लौटाता है, और order_by() को get_where() के बाद कॉल करने से यह परिणाम सेट पर अमान्य है, इसे कॉल करने का प्रयास कर रहा है।

संपादित

अन्य तरीके के रूप में अच्छी तरह से इस क्वेरी लिखने के लिए कर रहे हैं: से

$query = $this->db->order_by('columnName', 'ASC')->get_where('tableName'); 
return $query->result(); 
0

यह मेरे लिए काम किया * तालिका जहां col_name = '$ जहां' birth_date asc द्वारा आदेश ";

$ query = $ this-> डीबी-> क्वेरी ($ mysql_query);

मैंने अभी यह कोशिश की है और यह मेरे लिए काम करता है

+0

यह पहले से दिए गए उत्तर से अलग कैसे है? – Bowdzone

0
$this->db->order_by('birth_date', 'ASC'); 
$query = $this->db->get_where($field1, $field2); 
+1

आपको अपने उत्तर की व्याख्या करने की आवश्यकता है अन्यथा यह समझना मुश्किल है कि यह क्या करता है। परिवर्तनीय नाम '$ field1',' $ file2' भ्रमित –

0

$ mysql_query = "का चयन करें

$query = $this->db->from($this->tbl_name)->where($where)->order_by('birth_date', 'ASC')->get();