CodeIgniter Forums

Full Version: How does $this->db->insert_id() work exactly?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

El Forum

[eluser]Mischievous[/eluser]
In the user guide it states that "$this->db->insert_id()" will return the insert ID number when performing database inserts.

but what does this pick up? the primary key with auto increment value? or do i have to pass it the field that i want to get from previous result?


Basically I'm trying to insert into a "user" table that has a sister table "user_profile" table... i need the user_id field (auto incremented, primary key) to use in the user_profile for the next insert?

Ideas, thoughts?

Code:
Code:
$this->db->insert('user', $user['user']);
$user['profile']['user_id'] = $this->db->insert_id();
$this->db->insert('user_profile', $user['profile']);

El Forum

[eluser]connors[/eluser]
The DB driver is using the php function mysql_insert_id which states
Quote:Retrieves the ID generated for an AUTO_INCREMENT column by the previous query (usually INSERT).

I'm using the insert_id() function for the same purpose as you. If you'd like a code snippet of how I'm using it, let me know Smile

El Forum

[eluser]Mischievous[/eluser]
I would love to see a code snippet Wink

El Forum

[eluser]connors[/eluser]
http://bitbucket.org/connors511/flexauth..._model.php at line 281.
The library is still missing a feature or two, but the register function should work flawlessly Smile

El Forum

[eluser]Mischievous[/eluser]
Nice model, appreciate the help!