Cách SELECT dữ liệu database MySQL trong Wordpress
Hướng dẫn cách sử dụng Prepared Statements trong WordPress để truy vấn dữ liệu từ database MySQL một cách an toàn và hiệu quả.
Trong bài viết này, bạn sẽ học cách sử dụng Prepared Statements trong WordPress để thực hiện các câu lệnh SELECT, giúp truy vấn dữ liệu từ bảng trong cơ sở dữ liệu một cách an toàn và linh hoạt với nhiều tham số.
global $wpdb;
// Câu lệnh SELECT với Prepared Statement
$select_query = $wpdb->prepare(
"SELECT * FROM {$wpdb->prefix}users WHERE ID = %d AND user_login = %s",
1, 'john_doe'
);
// Thực hiện truy vấn
$results = $wpdb->get_results($select_query);
// In dữ liệu ra màn hình
foreach ($results as $user) {
echo 'ID: ' . $user->ID . ', Tên đăng nhập: ' . $user->user_login . '<br>';
}
Giải thích chi tiết từng dòng code:
global $wpdb;
: Khai báo biến toàn cục$wpdb
để sử dụng đối tượng truy cập database trong WordPress.$select_query = $wpdb->prepare(...)
: Sử dụng phương thứcprepare
của$wpdb
để tạo câu lệnh SELECT an toàn với các tham số."%d"
và"%s"
: Là các placeholder cho các kiểu dữ liệu khác nhau (số nguyên và chuỗi).1, 'john_doe'
: Các giá trị tham số sẽ được thay thế vào các placeholder tương ứng.$results = $wpdb->get_results($select_query);
: Thực hiện truy vấn và lấy kết quả dưới dạng mảng đối tượng.foreach ($results as $user) {...}
: Duyệt qua các kết quả và in thông tin của từng người dùng.
Yêu cầu hệ thống:
- WordPress cài đặt trên server.
- PHP 5.6 trở lên.
Cách cài đặt các thư viện để chạy được đoạn mã PHP trên:
Không cần cài đặt thêm thư viện vì mã trên sử dụng các hàm có sẵn trong WordPress.
Lời khuyên:
- Sử dụng
Prepared Statements
để bảo vệ ứng dụng của bạn khỏi các cuộc tấn công SQL injection. - Đảm bảo rằng bạn đang kết nối tới cơ sở dữ liệu đúng và đã kích hoạt WordPress trước khi thực hiện truy vấn.