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

bagaimana mencegah injeksi sql dari kueri ini?

Ketika placeholder dikutip, itu bukan placeholder, itu adalah nilai literal. Coba cara ini:

$a = Model::model()->findAllBySql(
                      'SELECT * FROM table WHERE name like :name',
                      array(":name"=> '%' . $_GET['name'] . '%')
                      );

Driver saat ini menambahkan titik dua secara otomatis tetapi mungkin tidak di masa mendatang, yang terbaik adalah memiliki nama yang cocok dengan placeholder.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySql jumlah elemen kolom

  2. bagaimana cara 'memuat data infile' di amazon RDS?

  3. Bagaimana cara membandingkan dua bidang/kolom dalam suatu kondisi?

  4. Bagaimana cara menyimpan bidang teks banyak bahasa di mysql dengan php?

  5. Bagaimana cara saya menggunakan penghapusan kaskade di mysql?