Rumah > Soal Jawab > teks badan
Adakah perlu merujuk kepada dokumen anti-suntikan sebelumnya dalam bahasaseperti php atau java? Sukar untuk mencari dokumentasi anti-suntikan yang berkaitan dengan python
黄舟2017-06-14 10:52:54
1.Lulus
cursor.execute("select * from table where name=%s", "name")
Anti suntikan.
2.Jika lulus
sql = "select * from table where name=%s" % MySQLdb.escape_string(name)
Format ini memerlukan MySQLdb.escape_string(name) untuk mengelakkan suntikan.
Adalah disyorkan untuk menggunakan yang pertama.
欧阳克2017-06-14 10:52:54
sql = "INSERT INTO `users` (`email`, `password`) VALUES (%s, %s)"
cursor.execute(sql, ('webmaster@python.org', 'very-secret'))
Satu perkara yang saya tahu adalah untuk tidak menggunakan sql.format("x1", "x2"), tetapi untuk menghantar parameter kepada cursor.execute untuk pemprosesan