Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

php password_verify không hoạt động với cơ sở dữ liệu

Đã tìm thấy vấn đề. khi tôi làm điều này:

echo strlen($hash)

nó được in 90, điều này thật kỳ lạ vì chắc chắn không có khoảng trắng ở cuối khi tôi in ra thông báo thành công / thất bại và trường có độ dài varchar là 255

Tôi đã thêm dòng này:

$hash = substr( $hash, 0, 60 );

Và bây giờ nó hoạt động tốt.

Thật kỳ lạ là không ai khác dường như đã gặp phải vấn đề này. Có những bài đăng tương tự về password_verify, nhưng không có bài đăng nào yêu cầu loại chuyển đổi này hoặc bất kỳ chuyển đổi nào cho vấn đề đó:

php password_verify không hoạt động

password_verify php không khớp

http://forums.phpfreaks.com/topic/ 283407-need-help-with-password-verify /

Sử dụng hàm password_hash và password_verify của PHP 5.5

Một điều làm tôi khó chịu là điều này ngăn mã tương thích về phía trước. Làm cách nào để biết rằng hàm băm dài 60 ký tự khi thay đổi mặc định?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Xác định xem kết hợp nhiều bản ghi có tồn tại hay không

  2. PHP:tại sao tôi không thể lặp lại hai lần trên kết quả mysqli_fetch_array ()?

  3. Lỗi SQL 1630:Hàm SUBSTRING không tồn tại .. huh?

  4. Đăng nhập / Hệ thống đăng ký với php và mysql

  5. MySQL:LỖI 1227 (42000):Quyền truy cập bị từ chối - Không thể TẠO NGƯỜI DÙNG