私はCodeigniterを初めて使用します。
これが私のテーブルです:
request_id | login_name | login_password | reg_date | 状態
$this->db->insert_id()
プライマリ自動インクリメント列名がではrequest_id
なく、最後に挿入されたIDを取得するために使用できますid
か?
どんな助けでもありがたいです。
私はCodeigniterを初めて使用します。
これが私のテーブルです:
request_id | login_name | login_password | reg_date | 状態
$this->db->insert_id()
プライマリ自動インクリメント列名がではrequest_id
なく、最後に挿入されたIDを取得するために使用できますid
か?
どんな助けでもありがたいです。
はい、insert_id
MySQLiでは列名は関係ありません。列がAUTO_INCREMENTであるだけです。戻ります。
前のクエリによって更新されたAUTO_INCREMENTフィールドの値。接続に以前のクエリがなかった場合、またはクエリがAUTO_INCREMENT値を更新しなかった場合は、ゼロを返します。
はい、$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 を取得します。
これがあなたを助けることを願っています... :)