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

Menggunakan variabel PHP sebelum kueri MYSQL

Selain rekomendasi yang sangat populer untuk tidak menggunakan fungsi mysql_*,
Anda perlu memastikan bahwa Anda tidak memiliki spasi kosong di elemen array Anda.

Berikut beberapa contoh kode untuk menghapus dan men-debug kueri di setiap langkah.

<?php

$elements = array('  element A', "\t Element B \r\n");

var_dump($elements);

/*
use var_dump to check your array elements for whitespace and such
array(2) {
  [0]=>
  string(11) "  element A"
  [1]=>
  string(14) "   Element B
"
}
*/

// create your IN clause string and verify it
$joinedString = "('" . join("','",array_map('trim',$elements)) . "')";

var_dump($joinedString);
/*
use var_dump not echo
string(25) "('element A','Element B')"

*/

// your query string finally becomes
$query = "SELECT * FROM smoelenboek 
WHERE sectie1 IN $joinedString 
OR sectie2 IN $joinedString 
OR sectie3 IN $joinedString 
OR sectie4 IN $joinedString 
OR sectie5 IN $joinedString 
AND actief='ja' ORDER BY achternaam ASC";

// and check it with var_dump and also run it in PhpMyAdmin
var_dump($query);
/*
string(280) "SELECT * FROM smoelenboek
WHERE sectie1 IN ('element A','Element B')
OR sectie2 IN ('element A','Element B')
OR sectie3 IN ('element A','Element B')
OR sectie4 IN ('element A','Element B')
OR sectie5 IN ('element A','Element B')
AND actief='ja' ORDER BY achternaam ASC"
*/


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Penyortiran bersyarat di MySQL?

  2. Fungsi jam () Hive mengembalikan nilai jam 12 jam

  3. Bagaimana cara membuat kunci asing yang juga merupakan kunci utama di MySQL?

  4. Apa itu PDO, apa hubungannya dengan injeksi SQL, dan mengapa saya harus menggunakan ini?

  5. MySQLi PHP:Periksa apakah kueri SQL INSERT sepenuhnya berhasil menggunakan MySQLi