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

PDO IN() Pernyataan Array DAN placeholder

Solusi

Ini akan berfungsi, jika $values adalah larik:

$query = "SELECT * FROM table WHERE id IN ($placeholders) AND product=?";
$stm->execute(array_merge($values, array($product)));

Penjelasan

execute() mengharapkan satu parameter - dalam hal ini array - akan disediakan. Dengan menambahkan array_merge($values, array($product)) anda membuat satu larik dengan $product ditambahkan di akhir, sehingga kueri harus berfungsi dengan benar.

Lihat demonya di sini:http://ideone.com/RcClX



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kesalahan MySQL 1215:Tidak dapat menambahkan batasan kunci asing

  2. MySQL:Lihat dengan Subquery di FROM Clause Limitation

  3. Simpan file PDF di MySQL

  4. mysqli_stmt::bind_param() [mysqli-stmt.bind-param]:Jumlah variabel tidak sesuai dengan jumlah parameter

  5. Subkueri vs bergabung