Đối chiếu MySQL của bạn có thể không phân biệt chữ hoa chữ thường . Thay đổi cột nơi mật khẩu được lưu trữ thành đối chiếu phân biệt chữ hoa chữ thường.
Một số quy tắc chung:
- Khi đối chiếu kết thúc bằng _ci, nó không phân biệt chữ hoa chữ thường.
- Khi đối chiếu kết thúc bằng _cs, nó sẽ phân biệt chữ hoa chữ thường.
Ví dụ:
- utf8_general_ci không phân biệt chữ hoa chữ thường.
- utf8_bin phân biệt chữ hoa chữ thường
Tuy nhiên, một lưu ý quan trọng
Nếu bạn đang gặp sự cố này, bạn có thể đang lưu trữ sai mật khẩu . Bạn không nên lưu trữ mật khẩu dưới dạng văn bản thuần túy, mà thay vào đó, bạn nên lưu trữ một hàm băm của mật khẩu và trộn mật khẩu đúng cách.
Sau đó, khi người dùng đăng nhập, bạn băm mục nhập của họ và so sánh băm với những gì DB của bạn nắm giữ. Khi cả hai bằng nhau, người dùng có thể đã nhập đúng mật khẩu.