- shares
- Facebook Messenger
- Gmail
- Viber
- Skype
Nếu bạn không thể truy cập vào trang quản trị Prestashop với các lý do nào đó, trong blog mình cũng có bài reset lại mật khẩu tài khoản wordpress khi không nhớ, bạn có thể tham khảo cách làm sẽ tương tự giống nhau để khôi phục mật khẩu prestashop.
Warning: Đã test thành công với Prestashop 1.6, Prestashop 6 và chưa test trong Prestashop 1.4
Màn hình đăng nhập lỗi
Nguyên nhân không đăng nhập được có thể username không tồn tại hoặc nhập một password sai.
Khi quên mật khẩu hay địa chỉ email thì bạn làm thế nào? bạn có thể sử dụng tính năng quên mật khẩu (Lost password) nhưng nó không làm việc hoặc bạn quên tài khoản email đăng ký. Bạn đừng lo lắng cho dù bạn mất cả 2 thông tin tài khoản này cũng hoàn toàn có cơ sở để lấy lại chúng một cách nhanh chóng, hãy theo dõi cách làm dưới đây.
Tự tạo lại mật khẩu
Trước khi có thể tạo lại mật khẩu mới để truy cập vào admin panel bạn cần có:
– Tài khoản hosting truy cập Database.
– Tài khoản FTP, hay File Manager.
– Một công cụ miễn phí sinh chuỗi hash MD5 (vd: http://www.miraclesalad.com/webtools/md5.php).
Đầu tiên, bạn nên biết rằng Prestashop lưu mật khẩu thông qua chuỗi hashed md5, chứ không lưu mật khẩu bạn điền trên form vào trực tiếp trong Database đâu nhé. Và đây là phương thức tạo mật khẩu trong Prestashop.
public static function encrypt($passwd) { return md5(_COOKIE_KEY_.$passwd); }
Ở đoạn code trên bạn nhìn thấy có thêm chuỗi _COOKIE_KEY_
gắn vào trước chuỗi mật khẩu trước khi tạo chuỗi mã hóa md5, hằng này có khai báo trong file config/settings.inc.php.
... define('_MEDIA_SERVER_3_', ''); define('_COOKIE_KEY_', '7oxINWn9ihNci5oODOaJPRJyktpRNZQJjtWXgCOKTvHUmABDcskMQ4Vw'); define('_COOKIE_IV_', 'rXFf5Wc9'); ...
copy chuỗi đó thêm vào trước mật khẩu của bạn sẽ sử dụng và điền vào md5 generator như hình ảnh sau, ví dụ ở đây tôi lấy mật khẩu là ‘simplepassword’.
Sau đó, nhấn vào nút md5 bạn được chuỗi mã hóa mới, copy chuỗi này vào database tại table ps_employee vào cột ‘passwd’ với email tương ứng bạn muốn khôi phục.
Vậy là xong, bạn có thể sử dụng mật khẩu mới rồi đấy. Không tin hãy đăng nhập thử nhé.
Cách khác: tạo file khôi phục mật khẩu
Trước khi thực hiện cách này bạn nên hiểu rằng nó sẽ nguy hiểm nếu bạn để file sinh mật khẩu này trên server. Do vậy sau khi sử dụng bạn nên xóa nó đi và lưu file vào nơi khác để tránh hacker lợi dụng.
Trong thư mục gốc cài đặt Prestashop, bạn tạo file với tên ‘pwdgen.php’ và thêm vào đoạn code dưới đây:
<?php include(dirname(__FILE__).'/config/config.inc.php'); include(dirname(__FILE__).'/init.php'); if($pass = Tools::getValue('mypass')) echo Tools::Encrypt($pass);
Đến đây chắc bạn cũng nên biết làm gì rồi, file này sẽ thay thế trương trình tạo md5 bạn không cần sử dụng thêm chuỗi _COOKIE_KEY_ như đề cập ở trên nữa điền password của bạn vào tham số hàm Tools::getValue
, và bạn làm theo hướng dẫn với cách 1: copy chuỗi md5 sinh ra vào database. Chúc bạn thành công.
Nếu bạn thích bài viết này, hãy ủng hộ chúng tôi bằng cách đăng ký nhận bài viết mới ở bên dưới và đừng quên chia sẻ kiến thức này với bạn bè của bạn nhé. Bạn cũng có thể theo dõi blog này trên Twitter và Facebook
- shares
- Facebook Messenger
- Gmail
- Viber
- Skype