假设$db是你的数据库对象,$sql是你要执行的sql语句。
先执行$db->query($sql);
再执行$last_id = $db->insert_id();
那么$last_id就是你需要的那个ID

解决方案 »

  1.   


    public function insert($data) {
        if (!is_array($data) || empty($data)) return 0;
        $data = $this->build_insert($data);
        $sql = sprintf("INSERT INTO %s %s", $this->table_name, $data);
        $result = $this->query($sql);
        return $this->insert_id();
    }
      

  2.   

    LAST_INSERT_ID()+1  怎样理解呢   能实现插入一条记录的时候   一个需要和id值一样的字段 的值是id值吗
      

  3.   

    当字段id被设置AUTO_INCREMENT自增的时候可以使用一下方式获取:
    mysql函数:LAST_INSERT_ID();
    php函数:mysql_insert_id();注:如果字段不是AUTO_INCREMENT的,以上函数将返回0;
      

  4.   

    插入后,mysql_insert_id() 这个就是插入的id值
      

  5.   

    mysql_insert_id() 函数返回上一步 insert操作产生的 ID。假如不是自增(AUTO_INCREMENT) 的 ID,那么 mysql_insert_id() 返回 0。
      

  6.   

    可以是这样的一个思路:
      1)先插入主数据,那个和id样值的字段留空;
      2)再用$id = mysql_insert_id()获取刚刚插入数据的id;
      3)再用update table set 字段={$id}把那个字段更新成和id一样的值或者先查出目前的最大id,对id加1,再手动插入id和那个和id一样值的字段,设置他们的值等于加1后的id