Có những mối đe dọa riêng biệt mà bạn (có thể) đang nói đến ở đây:
- Bạn cần vệ sinh dữ liệu đang được chèn vào cơ sở dữ liệu để tránh chèn SQL .
- Bạn cũng cần phải cẩn thận với dữ liệu đang được hiển thị cho người dùng, vì nó có thể chứa các tập lệnh độc hại (nếu nó được gửi bởi những người dùng khác). Xem mục nhập của Wikipedia về tập lệnh giữa các trang web (hay còn gọi là XSS)
Những gì có hại cho cơ sở dữ liệu của bạn không nhất thiết có hại cho người dùng (và ngược lại). Bạn phải quan tâm đến cả hai mối đe dọa cho phù hợp.
Trong ví dụ của bạn:
- Sử dụng mysqli ::real_escape_string () trên dữ liệu đang được chèn vào db của bạn (làm sạch)
Bạn có thể muốn sử dụng bộ lọc trước khi chèn dữ liệu - chỉ cần đảm bảo rằng nó "được làm sạch" vào thời điểm người dùng nhận được.
Bạn có thể cần sử dụng dải băng
() trên dữ liệu được truy xuất từ db để hiển thị chính xác cho người dùng nếu magic_quotes
đang trên