Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Tính năng tìm kiếm với nhiều tiêu chí - PHP / MySQL

Bạn có thể kiểm tra xem liệu bài đăng cho một trường cụ thể có trống hay không, nếu không, hãy nối mệnh đề WHERE tương ứng vào truy vấn. Một cái gì đó ở dạng sau:

$mysqli = new mysqli(...);
$sql = 'SELECT * FROM table WHERE ';
$where = array();
$values = array();
$types = '';

if (!empty($_POST['name'])) {
    $where[] = 'name = ?';
    $values[] = $_POST['name'];
    $types .= 's';
}

if (!empty($_POST['sex'])) {
    $where[] = 'sex = ?';
    $values[] = $_POST['sex'];
    $types .= 's';
}
...
$sql .= implode(' AND ',$where);
$values = array_unshift($values, $types);

$statement = $mysqli->prepare($sql);
call_user_func_array(array($statement, 'bind_param'), $values);
...



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để kích hoạt mysqlnd cho php?

  2. Java MySQL - Kết nối ống được đặt tên đưa ra cảnh báo khi đóng

  3. Cách Dừng / Khởi động MySQL bằng MySQL Workbench

  4. MySQL - Có thể sử dụng LIKE trên tất cả các cột trong bảng không?

  5. Laravel 5.5 Lỗi cơ sở bảng hoặc chế độ xem đã tồn tại:1050 Bảng 'người dùng' đã tồn tại