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

Memasukkan nilai $variable atau $_POST ke dalam tabel mysql

Dalam SQL, nilai string perlu dikutip:

VALUES ('value1', 'value2')"

Saat Anda menggunakan variabel:

VALUES ($var1, $var2)");

Mereka tidak dikutip ... kecuali tanda kutip itu ada dalam nilai itu sendiri.

Jadi if $var1 = 'value1'; $var2 = 'value2' kemudian (setelah variabel diinterpolasi dalam string Anda) SQL Anda terlihat seperti ini:

VALUES (value1, value2)"

Anda dapat menyelesaikan masalah langsung Anda dengan menambahkan kutipan:

VALUES ('$var1', '$var2')");

tetapi ini tidak memperbaiki kerentanan keamanan utama . Anda dan memungkinkan data Anda memecah kueri dengan cara yang berbeda.

Anda harus menghindari membuat pernyataan SQL dengan merakit string dari variabel . Cara ini mengarah ke lubang keamanan SQL Injection. Gunakan antarmuka yang mendukung argumen terikat . Mereka akan menangani mengutip dan melarikan diri untuk Anda.



  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 PILIH LAST_INSERT_ID() untuk kunci majemuk. Apa itu mungkin?

  2. Dapatkan baris dengan nilai tertinggi atau terendah dari GROUP BY

  3. Gabung tabel tergantung pada nilai kolom di tabel utama

  4. menggunakan bidang virtual untuk menjumlahkan nilai dalam cakephp

  5. Persistent vs non-Persistent - Mana yang harus saya gunakan?