Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Truy vấn MySQL không được chèn khi biến PHP chứa dấu nháy đơn

Cân nhắc sử dụng Truy vấn được tham số hóa bằng PDO chẳng hạn.

Ngoài ra, đặt các biến của bạn trong dấu ngoặc vuông {}.

Chỉnh sửa:

Tôi nhớ rằng biến của bạn $subject chứa dấu nháy đơn. Điều này có nghĩa là bạn phải thoát khỏi chúng. (Xem vô số câu trả lời khác và mysql_real_escape_string() về điều này.) Nhưng như bạn có thể thấy, các dấu ngoặc kép bên trong biến là chính xác cách hoạt động của các cuộc tấn công tiêm. Thoát khỏi chúng giúp ngăn chặn những vấn đề như vậy cũng như cho phép truy vấn của bạn lưu trữ dữ liệu mong đợi.

Không có câu trả lời nào về các cuộc tấn công tiêm là hoàn chỉnh nếu không tham khảo Bobby Tables .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hướng dẫn thiết kế cơ sở dữ liệu cho câu hỏi trong MySQL

  2. SET CHARACTER SET utf8 có cần thiết không?

  3. Cài đặt Mac và mở mysql bằng thiết bị đầu cuối

  4. Kết quả Nhóm MySQL theo ngày sử dụng dấu thời gian

  5. Danh sách các chỉ định định dạng ngày trong MySQL