PHPでMySQLに挿入されたIDを取得する方法


方法1: mysqli_insert_id()関数を使用する方法

// データベース接続の設定
$servername = "サーバー名";
$username = "ユーザー名";
$password = "パスワード";
$dbname = "データベース名";
// データベースに接続
$conn = mysqli_connect($servername, $username, $password, $dbname);
// データを挿入するクエリを実行
$query = "INSERT INTO テーブル名 (列1, 列2, 列3) VALUES ('値1', '値2', '値3')";
$result = mysqli_query($conn, $query);
// 挿入されたIDを取得
$inserted_id = mysqli_insert_id($conn);
// 挿入されたIDを表示
echo "挿入されたID: " . $inserted_id;
// データベース接続を閉じる
mysqli_close($conn);

方法2: PDOのlastInsertId()メソッドを使用する方法

// データベース接続の設定
$servername = "サーバー名";
$username = "ユーザー名";
$password = "パスワード";
$dbname = "データベース名";
// データベースに接続
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// データを挿入するクエリを準備
$query = $conn->prepare("INSERT INTO テーブル名 (列1, 列2, 列3) VALUES (:値1, :値2, :値3)");
// 値をバインド
$query->bindParam(':値1', $値1);
$query->bindParam(':値2', $値2);
$query->bindParam(':値3', $値3);
// 値をセット
$値1 = '値1';
$値2 = '値2';
$値3 = '値3';
// クエリを実行
$query->execute();
// 挿入されたIDを取得
$inserted_id = $conn->lastInsertId();
// 挿入されたIDを表示
echo "挿入されたID: " . $inserted_id;
// データベース接続を閉じる
$conn = null;

方法3: MySQLiオブジェクト指向インターフェースを使用する方法

// データベース接続の設定
$servername = "サーバー名";
$username = "ユーザー名";
$password = "パスワード";
$dbname = "データベース名";
// データベースに接続
$conn = new mysqli($servername, $username, $password, $dbname);
// 接続エラーのチェック
if ($conn->connect_error) {
    die("接続エラー: " . $conn->connect_error);
}
// データを挿入するクエリを準備
$query = "INSERT INTO テーブル名 (列1, 列2, 列3) VALUES ('値1', '値2', '値3')";
// クエリを実行
$result = $conn->query($query);
// 挿入されたIDを取得
$inserted_id = $conn->insert_id;
// 挿入されたIDを表示
echo "挿入されたID: " . $inserted_id;
// データベース接続を閉じる
$conn->close();

これらの方法を使用することで、PHPでMySQLに挿入されたIDを取得することができます。それぞれの方法は、mysqli_insert_id()関数、PDOのlastInsertId()メソッド、およびMySQLiオブジェクト指向インターフェースのinsert_idプロパティを使用して、挿入されたIDを取得します。選択した方法に応じて、適切なコード例を使用して挿入されたIDを取得してください。