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

mysql_real_escape_string VS addlashes

Những gì bạn trích dẫn có thể là từ tài liệu, nhưng theo tôi biết thì nó không nhất thiết phải đúng.

addslashes thêm dấu gạch chéo vào các ký tự thường gây khó chịu. mysql_real_escape_string thoát khỏi bất cứ điều gì MySQL cần để được thoát. Đây có thể nhiều hơn hoặc ít ký tự hơn những gì addslashes chăm sóc.

Ngoài ra, mysql_real_escape_string sẽ không nhất thiết phải thêm dấu gạch chéo để thoát. Mặc dù tôi nghĩ rằng nó hoạt động nếu bạn làm theo cách đó, nhưng các phiên bản gần đây của MySQL Escape đều trích dẫn bằng cách đặt hai trong số chúng lại với nhau thay vì đặt dấu gạch chéo trước nó.

Tôi tin rằng bạn nên luôn sử dụng chức năng thoát của nhà cung cấp dữ liệu thay vì addslashes , bởi vì addslashes có thể làm quá nhiều hoặc không đủ công việc cho mục đích bạn sử dụng nó. Mặt khác, mysql_real_escape_string biết phải làm gì để chuẩn bị một chuỗi để nhúng nó vào một truy vấn. Ngay cả khi các thông số kỹ thuật thay đổi về cách thoát nội dung và đột nhiên nó không phải là dấu gạch chéo ngược mà bạn nên sử dụng nữa, mã của bạn sẽ vẫn hoạt động vì mysql_real_escape_string sẽ biết về nó.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách kiểm tra phiên bản MySQL

  2. Cài đặt MySQL Workbench để quản trị cơ sở dữ liệu

  3. Có sử dụng SET NAMES không

  4. JSON_ARRAY_INSERT () - Chèn giá trị vào một mảng JSON trong MySQL

  5. JSON_PRETTY () - Định dạng tài liệu JSON để dễ đọc hơn trong MySQL