thể trùng lặp:
Using stripslashes after mysql_real_escape_stringDấu gạch ngang là gì?
Tôi đã được đọc gần đây nhất là về công tác phòng chống SQL injection và tôi đang cố gắng để phát triển một số ý nghĩa của sự hiểu biết giữa các chức năng khác nhau để tôi có thể học hỏi những thứ cơ bản.
Tôi đã đọc về mysql_real_escape_string
và tôi hiểu rằng về cơ bản là thoát các ký tự mà nó cho là "đặc biệt" sao cho nó không bị nhầm lẫn với cú pháp SQL?
Bây giờ, giả sử rằng ít nhất là ở một mức độ nào đó đúng - có cần sử dụng hàm stripslashes
kết hợp với mysql_real_escape_string
không? Tôi đang tự hỏi về những gì stripslashes
là gì và nó là gì.
Chức năng này được gọi là ['stripslashes'] (http://php.net/manual/fr/function.stripslashes.php). Và có, tính hữu ích của 'mysql_real_escape_string' là" thực ". Và không, bạn không cần phải sử dụng nó với 'mysql_real_escape_string'. – zneak
Vâng, xin lỗi tôi đã viết sai - cảm ơn vì đã chỉ ra. – user1868565
Tôi không thể tìm thấy hàm 'striphashes' trong tài liệu PHP. Bạn có nghĩa là 'stripslashes'? Ngoài ra, 'mysql_real_escape_string' được sử dụng để thoát khỏi bất kỳ thứ gì có khả năng SQL theo cách mà nó không còn là SQL nữa. Kịch bản là: bạn lấy dữ liệu chuỗi từ người dùng; bạn muốn sử dụng dữ liệu này trong một câu lệnh SQL; sử dụng 'mysql_real_escape_string' đảm bảo rằng người dùng không thể chèn SQL vào dữ liệu của họ. AKA, [SQL injection] (https://en.wikipedia.org/wiki/SQL_injection) phòng ngừa. –