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

Pernyataan yang disiapkan MYSQLI jenis bind_param tidak berfungsi

$stmt->bind_param() tidak memeriksa variabel yang diberikan untuk tipe tertentu, itu hanya mengubahnya menjadi tipe yang ditentukan. Dan string Anda 'aaaaaaaa' diubah menjadi nilai int:0. Begitulah cara php melakukannya.

Pernyataan penyisipan basis data adalah tempat yang salah untuk diperiksa, jika variabel Anda mengandung nilai yang berguna/benar. Lakukan itu sebelumnya dan coba masukkan saja, jika validasi Anda berhasil.

Untuk melakukan validasi int, Anda bisa menggunakan fungsi php is_numeric() atau is_int().



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. pilih semua kolom dengan grup menurut dalam kueri kriteria hibernasi

  2. Ekspor data dari MySQL ke Excel dengan pengkodean UTF-8

  3. MySQL Select Query - Dapatkan hanya 10 karakter pertama dari suatu nilai

  4. codeIgniter menggunakan mysql_real_escape_string() sebagai gantinya. masalah koneksi database

  5. Salin/duplikat database tanpa menggunakan mysqldump