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

Pemfilteran Pencarian dengan PHP/MySQL

Seperti semua pos lainnya, Anda perlu menambahkan semua ketentuan dengan DAN seperti itu. Ini adalah jawaban terbersih sejauh ini. Ingatlah untuk benar-benar keluar dari string Anda meskipun menggunakan cara mysqli OOP alih-alih mysql lama. Sekedar saran.

Berikut contoh kueri tipikal.

Cara yang benar:

SELECT * FROM donar WHERE name='dxenaretionx' AND sex='M';

Cara Anda melakukannya

SELECT * FROM donar WHERE name='dxenaretionx' sex='M';

Kode:

function search_donar($_POST) {
    $by_name = $_POST['by_name'];
    $by_sex = $_POST['by_sex'];
    $by_group = $_POST['by_group'];
    $by_level = $_POST['by_level'];

    //Do real escaping here

    $query = "SELECT * FROM donar";
    $conditions = array();

    if(! empty($by_name)) {
      $conditions[] = "name='$by_name'";
    }
    if(! empty($by_sex)) {
      $conditions[] = "sex='$by_sex'";
    }
    if(! empty($by_group)) {
      $conditions[] = "blood_group='$by_group'";
    }
    if(! empty($by_level)) {
      $conditions[] = "e_level='$by_level'";
    }

    $sql = $query;
    if (count($conditions) > 0) {
      $sql .= " WHERE " . implode(' AND ', $conditions);
    }

    $result = mysql_query($sql);

    return $result;
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana menemukan dan mengganti teks di tabel mysql

  2. Memanggil prosedur tersimpan di codeigniter

  3. MySQL JIKA TIDAK NULL, lalu tampilkan 1, jika tidak tampilkan 0

  4. Pilih pengguna dari satu tabel hanya jika tidak di tabel lain

  5. Bagaimana cara menggunakan regex di MySQL?