2013-01-21 3 views

ответ

9

попробовать этот код:

$this->db->insert_id(); 

См: http://ellislab.com/codeigniter/user_guide/database/helpers.html

+0

Это используется, чтобы получить последний введенный id, но я хочу получить строку. – Hasnain

+1

с помощью этого идентификатора вы можете получить последнюю вставленную строку. – Mani

+0

Если вы только что вставили строку, у вас уже есть детали - зачем вам нужно вернуть ее из базы данных? @Mani уже показал, как получить идентификатор вставки. – dakdad

0

насчет:

$this->db->get('mytable', 1,0) 
+0

это будет использоваться для применения предела. См. [Здесь] (http://ellislab.com/codeigniter/user-guide/database/active_record.html#select) –

2

Использование Активный метод записи после введения. вернуть последний вставленного идентификатор

function insert($data) 
{ 
    $this->db->insert('tablename', $data); 
    return $this->db->insert_id(); 
} 

Here является ссылкой

5

Там нет специальной функции для этого. Но вы можете получить идентификатор строки, который вы только что вставили, а затем получить его данные:

$this->db->insert('table_name', $data); 

$id = $this->db->insert_id(); 
$q = $this->db->get_where('table_name', array('id' => $id)); 
return $q->row(); 
2

У меня есть советы для вас. Когда вы хотите вставить данные, верните массив данных, и вы можете его отредактировать.

public function set_alb_photos() { 
    $data = array(
     'alp_title' => $this->input->post('alp_title'), 
     'alp_file_location' => $this->input->post('alp_file_location'), 
     'alp_album_id' => $this->input->get('alb_id'), 
     'alp_created_at' => date("Y-m-d H:i:s"), 
     'alp_updated_at' => date("Y-m-d H:i:s") 
    ); 
    $this->db->insert('alb_photos', $data); 
    return $data; 
    } 

Я надеюсь, что эта помощь.

0

Это поможет вам получить последнюю вставленную строку из таблицы.

$last = $this->db->order_by('id',"desc")->limit(1)->get('tablename')->row(); 
    print_r($last); 
+0

Предоставьте некоторое описание. – Masoud

Смежные вопросы