Tôi sẽ tìm kiếm sự không phù hợp giữa mã hóa ký tự được sử dụng trong giao diện Web của bạn và mã hóa được sử dụng ở cấp cơ sở dữ liệu. Ví dụ:nếu giao diện Web của bạn sử dụng UTF-8 và cơ sở dữ liệu của bạn đang sử dụng mã hóa MySQL mặc định của latin1
, sau đó bạn cần thiết lập bảng của mình với DEFAULT CHARSET=utf8
.
Sử dụng mysql_real_escape_string()
hoặc mysqli, nhân tiện. addslashes()
là KHÔNG bảo vệ đầy đủ chống lại việc đưa vào SQL.