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

PHP:mysql v mysqli v pdo

Desain mysql_query fungsinya sedemikian rupa sehingga Anda harus berhati-hati untuk menghindari setiap bit data yang Anda masukkan ke dalamnya, dan jika Anda melewatkan satu pun, seluruh aplikasi Anda dapat dihancurkan oleh alat eksploitasi kerentanan SQL otomatis .

Keduanya mysqli dan placeholder dukungan PDO yang diperlukan untuk memastikan bahwa kueri Anda aman dari bug injeksi SQL. Memanggil mysql_real_escape_string pada semuanya tidak hanya membosankan, tetapi rawan kesalahan, dan di situlah masalah muncul.

mysql fungsi adalah produk dari hari-hari awal PHP dan secara signifikan lebih terbatas daripada fitur berorientasi objek baru yang ditawarkan oleh mysqli sebagai pilihan, atau PDO sesuai desain.

Ada sejumlah alasan yang sangat bagus untuk menggunakan salah satu dari dua antarmuka baru ini, tetapi yang paling penting adalah mysql_query fungsi terlalu berbahaya untuk digunakan dalam kode produksi. Dengan itu Anda akan selalu menjadi satu kesalahan dari beberapa masalah yang sangat serius.

Ada alasan mengapa database yang penuh dengan kata sandi dan nomor kartu kredit terus muncul. Memiliki titik injeksi SQL yang jelas membuatnya hampir terlalu mudah untuk sepenuhnya mengambil alih sebuah situs.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. hindari Mengurutkan berdasarkan MYSQL IN Kata Kunci

  2. Diperlukan untuk menggabungkan 2 tabel dengan FK mereka di tabel ke-3

  3. Cara mendapatkan rata-rata dengan orderBy Desc di Laravel 5

  4. Debugging PDO - Lihat Kueri SETELAH Bind?

  5. masalah dalam menginstal permata mysql2 dengan Rails3 di mac