Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara mengabaikan parameter dalam kueri mysqli yang disiapkan di PHP?

Anda dapat membuat daftar kriteria dan menambahkan ke dalam daftar nilai dan jenis pengikatan, berikut ini adalah tiruan cepat yang menggunakan dua bidang yang Anda rujuk...

$data = [];
$params = "";
$where = [];
if ( !empty($name)) {
    $data[] = $name;
    $params.="s";
    $where[] = "name like ?";
}
if ( !empty($size)) {
    $data[] = $size;
    $params.="i";
    $where[] = "size < ?";
}
$sql = "SELECT * FROM items";
if ( count($where) > 0 ){
    $sql .= " where ". implode ( " and ", $where);
}
$query = $database->prepare($sql);
$query->bind_param($params, ...$data);
$query->execute();

Perhatikan bahwa bind_param() menggunakan ... untuk memungkinkan Anda melewatkan larik alih-alih masing-masing bidang.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Layanan MySQL57 di Komputer Lokal dimulai dan kemudian berhenti

  2. MySQL FIND_IN_SET() tidak berfungsi seperti yang diharapkan

  3. Rails 3 ActiveRecord:Pesan berdasarkan jumlah asosiasi

  4. Bagaimana cara kerja INDEKS TEKS LENGKAP pada banyak kolom?

  5. pencarian mysql untuk segmen nama tabel