2

我是 Codeigniter 的新手..

所以这是我的桌子:

request_id | 登录名 | 登录密码 | 注册日期 | 地位

$this->db->insert_id()如果主自动增量列名request_id不是 ,我可以用来获取最后插入的 idid吗?

任何帮助将不胜感激..

4

3 回答 3

6

是的,insert_id在 MySQLi 中不关心列名,只关心列是 AUTO_INCREMENT。它返回;

由上一个查询更新的 AUTO_INCREMENT 字段的值。如果连接上没有先前的查询或查询没有更新 AUTO_INCREMENT 值,则返回零。

于 2013-01-24T05:29:38.433 回答
1

是的,你可以使用。

$this->db->insert_id()为您提供最后插入记录的 id,因此无需更改方法名称。

参考这里

于 2013-01-24T05:30:14.430 回答
1

是的,使用 $this->db->insert_id() 可以获取表中最后插入记录的 id。
像这样 :

     <?php    
    class InsertRecord extends CI_Model {
    var $tablename = "test_table";
    var $primaryID = "request_id";

        function insertRecord(){
             $insertArr['login_name'] = $_POST['login_name'];
             $insertArr['login_password'] = $_POST['login_password'];
             $insertArr['reg_date'] = $_POST['reg_date'];       
             $insertArr['status'] = $_POST['status'];
             if ($this->db->insert($this->tablename, $insertArr)) {
                $lastInsertedID = $this->db->insert_id();
             }
        }
     }
    ?>

在 $lastInsertedID 变量中,您将获得最后插入记录的 id。

希望对你有帮助... :)

于 2013-01-24T05:35:21.917 回答