2009-12-31 4 views

Répondre

259

Honte à moi ...

je regardais la user guide et la première fonction est $this->db->insert_id();

Cela fonctionne aussi avec des inserts activerecord ...

EDIT: Je mis à jour le lien

+28

l'userguide est votre meilleur ami pour des choses comme ça. J'utilise codeigniter depuis 2+ ans et je trouve encore des fonctions comme ça que je n'ai jamais connu. –

+7

Assurez-vous d'insérer votre insertion et cette fonction dans une transaction car le planificateur de requête peut insérer un autre objet avant d'exécuter cette fonction. –

+3

Le lien est mort, le lien a été mis à jour: http://ellislab.com/codeigniter/user-guide/database/ helpers.html – womd

30

Le dernier identifiant d'insertion signifie que vous pouvez obtenir l'ID d'incrément automatique inséré en utilisant cette méthode dans l'enregistrement actif,

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

Vous pouvez vous référer ce lien, vous pouvez trouver plus de choses.

Information from executing a query

+0

Le lien n'est pas correct. Veuillez corriger le lien. nouveau lien http://www.codeigniter.com/userguide3/database/helpers.html –

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

Renvoie l'insert numéro d'identification lorsque la base de données effectuant inserts

Query Helper Methods pour CodeIgniter-3

5

essayer.

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

@Dennis Decoene vous pouvez également visiter ce lien https://ellislab.com/codeIgniter/user-guide. – Raham

10

pour Table spécifique, vous ne pouvez pas utiliser $ this-> db-> insert_id(). même le dernier insert est arrivé il y a longtemps, il peut être récupéré comme ça. peut-être tort. mais fonctionne bien pour moi

 $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();

Essayez comme votre question souhaitée.

3

Liste des détails qui aide à la demande id et les requêtes sont

Pour aller chercher Dernière Inséré Id: Cela aller chercher les derniers enregistrements de la table

$this->db->insert_id(); 

semblables dans la requête SQL ajouter cette après demande modale

$this->db->last_query() 
Questions connexes