PHP MySQL: সর্বশেষ ইনসার্ট হওয়া রেকর্ডের ID পাওয়া

PHP MySQL: সর্বশেষ ইনসার্ট হওয়া রেকর্ডের ID পাওয়া

MySQL-এ যখন আপনি কোন নতুন রেকর্ড ইনসার্ট করেন, তখন অনেক সময় সেই রেকর্ডের প্রধান কী (Primary Key) বা ID জানা জরুরি হয়ে পড়ে। PHP-তে আপনি সহজেই সেই **Last Inserted ID** বের করতে পারেন।

এই টিউটোরিয়ালে আমরা দেখাবো কিভাবে এটি কাজ করে —


✅ MySQLi দিয়ে Last Inserted ID

<?php
$host = "localhost";
$user = "root";
$pass = "";
$db = "my_new_database";

$conn = new mysqli($host, $user, $pass, $db);

if ($conn->connect_error) {
    die("সংযোগ ব্যর্থ: " . $conn->connect_error);
}

$sql = "INSERT INTO users (name, email) VALUES ('Hasib', 'hasib@example.com')";

if ($conn->query($sql) === TRUE) {
    $last_id = $conn->insert_id;
    echo "✅ নতুন রেকর্ড ইনসার্ট হয়েছে। Last Inserted ID হলো: " . $last_id;
} else {
    echo "❌ ইনসার্ট ত্রুটি: " . $conn->error;
}

$conn->close();
?>

ব্যাখ্যা: $conn->insert_id ব্যবহার করে আপনি সর্বশেষ ইনসার্ট হওয়া রেকর্ডের অটো-ইনক্রিমেন্ট ID পেতে পারেন।


✅ PDO দিয়ে Last Inserted ID

<?php
$host = "localhost";
$dbname = "my_new_database";
$user = "root";
$pass = "";

try {
    $pdo = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
    $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    $stmt = $pdo->prepare("INSERT INTO users (name, email) VALUES (:name, :email)");
    $stmt->execute([
        ':name' => 'Rafi',
        ':email' => 'rafi@example.com'
    ]);

    $last_id = $pdo->lastInsertId();
    echo "✅ PDO: সর্বশেষ ইনসার্ট হওয়া ID: " . $last_id;
} catch (PDOException $e) {
    echo "❌ ত্রুটি: " . $e->getMessage();
}
?>

PDO-তে: $pdo->lastInsertId() ফাংশন ব্যবহার করে সর্বশেষ ইনসার্ট হওয়া ID পাওয়া যায়।


উপসংহার

  • MySQLi ব্যবহার করলে $conn->insert_id
  • PDO ব্যবহার করলে $pdo->lastInsertId()

✅ আপনি যদি ইনসার্ট করার পরেই ইউজারকে রিডাইরেক্ট করতে চান বা তার ডেটা নিয়ে আরও কিছু করতে চান, তাহলে এই ID খুবই কাজে আসে।

 

Leave a Reply