Chúng tôi cho phép người dùng tìm kiếm cơ sở dữ liệu từ một đầu vào văn bản duy nhất và tôi gặp khó khăn trong việc lọc một số chuỗi do người dùng cung cấp.Xác thực người dùng nhập hoặc
Ví dụ, nếu người dùng gửi:
��������� lcd SONY
(Lưu ý 's?) Tôi cần phải hủy bỏ việc tìm kiếm.
tôi bao gồm các phiên bản base64 của chuỗi trên quấn lên mã hóa để chạy dễ dàng của nó:
print(base64_decode("1MfLxc/RwdPHIGxjZCBTT05Z"));
Tôi đã bỏ qua nguyên liệu đầu vào như trước đây nhưng bây giờ (không chắc chắn lý do tại sao) chỉ nhận ra các truy vấn cơ sở dữ liệu mysql đang thực hiện gần như mãi mãi để thực hiện vì vậy điều này hiện đang được ưu tiên cao.
Một ví dụ khác để làm nổi bật mà chúng ta đang sử dụng utf-8 và mb_detect_encoding không được giúp đỡ nhiều:
print(base64_decode("zqDOm8+Fzr3PhM63z4HOuc6/IM+Bzr/Phc+HzyU="));
ΠΛυντηριο ρουχ�%
Vì vậy:
- làm thế nào tôi có thể phát hiện/lọc các nguyên liệu đầu vào?
- cách nhập này được tạo ra như thế nào?
Việc từ chối các đầu vào này là điều không đúng. Bạn cần phải tìm ra lý do tại sao chúng ảnh hưởng xấu đến hiệu suất ngay từ đầu. – SLaks
Đây là tuyến phòng thủ đầu tiên. Tôi đang bị kẹt vào lúc này vì vậy tôi sẽ điều tra vấn đề hiệu suất cơ sở dữ liệu ngay bây giờ cho đến khi tôi có một ý tưởng sáng sủa. – zaf
Bạn có nói rằng người dùng thực sự nhập thủ công ký tự thay thế không? http://www.fileformat.info/info/unicode/char/FFFD/index.htm –