2009-12-31 9 views
133

क्या कोडइग्निटर में एक नए रिकॉर्ड की अंतिम डालने आईडी प्राप्त करने के लिए कोई विकल्प हैं?कोडइग्निटर activerecord, अंतिम डालने आईडी पुनर्प्राप्त करें?

$last_id = $this->db->insert('tablename', 
    array('firstcolumn' => 'value', 
    'secondcolumn' => 'value') 
); 

क्षेत्रों आईडी (autoincrement) firstcolumn और secondcolumn की मेज consits ध्यान में रखते हुए।

इस तरह आप निम्नलिखित कोड में डालने आईडी का उपयोग कर सकते हैं। मुझ पर

+4

मैं कई बार के लिए इस सवाल का आना रहते हैं। आपका बहुत बहुत धन्यवाद! – giripp

उत्तर

259

शर्म की बात है ...

मैं user guide को देखा और पहला समारोह $this->db->insert_id();

यह भी ActiveRecord आवेषण के साथ काम करता है ...

संपादित है: मैं लिंक

अद्यतन
+28

उपयोगकर्ता गाइड इस तरह की चीजों के लिए आपका सबसे अच्छा दोस्त है। मैं 2+ सालों के लिए कोडनिर्देशक का उपयोग कर रहा हूं और मुझे अभी भी इस तरह के कार्य मिलते हैं जिन्हें मैं कभी नहीं जानता था। http://ellislab.com/codeigniter/user-guide/database/: एक सौदे में अपने डालने और इस समारोह रैप करने के लिए के रूप में क्वेरी अनुसूचक इस समारोह को चलाने से पहले –

+7

helpers.html –

+3

कड़ी है मृत, अद्यतन लिंक एक और ऑब्जेक्ट सम्मिलित कर सकते हैं सुनिश्चित करें – womd

30

अंतिम डालने आईडी मतलब है कि आप सक्रिय रिकॉर्ड में इस विधि का उपयोग कर डाला हो सकता है ऑटो वेतन वृद्धि आईडी,

$this->db->insert_id() 
// it can be return insert id it is 
// similar to the mysql_insert_id in core PHP 

आप इस लिंक का उल्लेख कर सकते आप कुछ और सामान मिल सकता है।

Information from executing a query

+0

लिंक सही नहीं है। कृपया लिंक को ठीक करें। नया लिंक http://www.codeigniter.com/userguide3/database/helpers.html –

3
$this->db->insert_id(); 

डालने आईडी संख्या देता है जब डेटाबेस प्रदर्शन सम्मिलित करता

के लिए CodeIgniter-3

5

इस प्रयास करें Query Helper Methods

public function insert_data_function($your_data) 
{ 
    $this->db->insert("your_table",$your_data); 
    $last_id = $this->db->insert_id(); 
    return $last_id; 
} 
+0

@ डेनिस डेकोइन आप इस लिंक https://ellislab.com/codeIgniter/user-guide पर भी जा सकते हैं। – Raham

10

विशिष्ट तालिका के लिए आप $-> db-> insert_id() का उपयोग नहीं कर सकते हैं। यहां तक ​​कि आखिरी सम्मिलन बहुत पहले हुआ था, इसे इस तरह लाया जा सकता है। गलत हो सकता है लेकिन अपने वांछित प्रश्न के रूप में मेरे लिए अच्छी तरह से काम कर रहा

 $this->db->select_max('{primary key}'); 
    $result= $this->db->get('{table}')->row_array(); 
    echo $result['{primary key}']; 
1
if($this->db->insert('Your_tablename', $your_data)) { 
    return $this->db->insert_id(); 
} 
return false 
6

$this->db->insert_id();

इस प्रयास करें।

3

विवरण जो आईडी का अनुरोध में मदद करता है और प्रश्नों

हैं अंतिम डाला आईडी प्राप्त करने में कठिनाई के लिए की सूची: इस तालिका से पिछले रिकॉर्ड प्राप्त करने में कठिनाई होगी

$this->db->insert_id(); 

ला रहा है SQL क्वेरी मोडल अनुरोध

के बाद इस ऐड
$this->db->last_query() 
संबंधित मुद्दे