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

Làm sạch đủ cho một URL là gì

"Làm vệ sinh đủ" hoàn toàn phụ thuộc vào môi trường bạn đang nói đến. Quá trình vệ sinh cho MySQL nên được coi là hoàn toàn riêng biệt từ quá trình làm sạch cho đầu ra web và bạn nên xử lý chúng một cách riêng biệt để tránh nhiều rắc rối.

Vệ sinh cho MySQL

  • mysql_real_escape_string() sẽ khử trùng một phần dữ liệu và giúp an toàn khi đưa vào bên trong một truy vấn SQL.
  • Bất kỳ loại dữ liệu độc hại nào khác, chẳng hạn như các thẻ HTML bên trong chuỗi, nên bị bỏ qua tuyệt đối. Việc cố gắng thao tác nó ở đây sẽ khiến bạn đau đầu vì bạn cố gắng "mở thao tác" nó sau khi lấy nó ra khỏi cơ sở dữ liệu. "Dữ liệu web" không hợp lệ không thể gây hại cho cơ sở dữ liệu của bạn.

Vệ sinh đầu ra

  • htmlspecialchars($val) tại thời điểm đầu ra sẽ ngăn không cho bất kỳ thẻ độc hại nào được hiển thị, bởi vì <> các ký tự được chuyển đổi thành biểu diễn thực thể của chúng và không được hiển thị dưới dạng dấu phân cách thẻ.
  • Sử dụng ENT_QUOTES bổ trợ nếu bạn đang xuất nội dung nào đó bên trong thuộc tính được trích dẫn của phần tử HTML, chẳng hạn như <input name="email" value="<?php echo htmlspecialchars($email,ENT_QUOTES); ?>" />

Đó phải là tất cả những gì bạn cần, trừ khi bạn có yêu cầu đặc biệt. strip_tags() không thực sự nên được sử dụng để làm sạch, vì nó có thể bị đánh lừa với HTML được định dạng xấu. Vệ sinh là một mục tiêu xứng đáng và nếu bạn có thể tách biệt các bối cảnh của mình, bạn sẽ gặp ít vấn đề hơn với việc thao tác dữ liệu giữa chúng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để xuất cơ sở dữ liệu từ phiên bản Amazon RDS MySQL sang phiên bản cục bộ?

  2. Hiển thị hình ảnh cụ thể tùy thuộc vào văn bản cụ thể trong bảng MySQL bằng PHP

  3. Bạn có nên sử dụng các câu lệnh đã chuẩn bị sẵn chỉ cho việc trốn thoát của họ không?

  4. Nhóm theo truy vấn chọn mysql union

  5. Làm cách nào để cắt bỏ Trích dẫn hàng đầu và Dẫn đầu từ Hàng MySQL?