DANH MỤC: PHP&MYSQL

Bài 3: Lấy ID vừa insert vào MySql bằng PHP


-Tiếp tục series mình sẽ giới thiệu với mọi người cách lấy ra id của dữ liệu vừa thêm vào MySql bằng PHP.

1, Lấy id vừa insert bằng mysqli.

mysqli hướng thủ tục

-Với cách này chúng ta sử dụng phương thức mysqli_insert_id() để lấy ra id của dữ liệu vừa thêm.

VD:

// khởi tạo kết nối
$connect = mysqli_connect('localhost', 'root', '', 'db_tuts');
//Kiểm tra kết nối
if (!$connect) {
    die('kết nối không thành công ' . mysqli_connect_error());
}
//câu truy vấn
$sql = "INSERT INTO tbl_news (title, content) 
VALUES ('tieu de', 'noi dung')";
//kiểm tra
if (mysqli_query($connect, $sql))
    //Thông báo nếu thành công
    echo 'Thêm thành công. ID=' . mysqli_insert_id($connect);
else
    //Hiện thông báo khi không thành công
    echo 'Không thành công. Lỗi' . mysqli_error($connect);
//ngắt kết nối
mysqli_close($connect);

mysqli hướng đối tượng

-Với cách này thì chúng ta chỉ cần gọi thuộc tính insert_id của class mysqli để lấy ra ID của giá trị vừa thêm.

VD:

// khởi tạo kết nối
$connect = new mysqli('localhost', 'root', '', 'db_tuts');
//Kiểm tra kết nối
if ($connect->connect_error) {
    die('kết nối không thành công ' . $connect->connect_error);
}
//câu truy vấn
$sql = "INSERT INTO tbl_news (title, content) 
VALUES ('tieu de', 'noi dung')";
//kiểm tra
if ($connect->query($sql) === TRUE)
    //Thông báo nếu thành công
    echo 'Thêm thành công. ID=' . $connect->insert_id;
else
    //Hiện thông báo khi không thành công
    echo 'Không thành công. Lỗi' . $connect->error;
//ngắt kết nối
$connect->close();

2, Lấy id vừa insert bằng PDO.

-Với cách này các bạn chỉ cần gọi phương thức lastInsertId() của class PDO để có thể lấy ra được id của giá trị vừa thêm.

VD:

try {
    // khởi tạo kết nối
    $connect = new PDO('mysql:host=localhost;dbname=db_tuts', 'root', '');
    $connect->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    //Câu truy vấn
    $sql = "INSERT INTO tbl_news (title, content) VALUES ('tieu de', 'noi dung')";
    //thực hiện truy vấn
    $connect->exec($sql);
    echo 'Thành công. ID=' . $connect->lastInsertId();
} catch (PDOException $e) {
    //thất bại
    die($e->getMessage());
}
//Ngắt kết nối
$connect = null;

3, Lời kết.

-Như vậy qua bài này mình đã giới thiệu với mọi người cách lấy ra ID của dữ liệu vừa thêm vào trong MySql bằng các driver mà PHP cung cấp rồi.

Nguồn: Toidicode.com

Thông tin tác giả

Vũ Thanh Tài

Vũ Thanh Tài

Biển học vô biên, quay đầu là dại!

Hãy tham gia group facebook để cùng giao lưu chia sẻ kiến thức! Tham Gia