gpt4 book ai didi

wordpress - WP - check_password_reset_key 函数总是返回过期 key

转载 作者:行者123 更新时间:2023-12-01 04:57:09 24 4
gpt4 key购买 nike

我用过 check_password_reset_key()在wordpress上实现忘记密码功能的功能,但是当我使用check_password_reset_key()时查看 ($key, $user)此函数始终返回“过期 key ”。

// Generate something random for a password reset key.
$key = wp_generate_password( 20, false );

// Now insert the key, hashed, into the DB.
if ( empty( $wp_hasher ) ) {
require_once ABSPATH . WPINC . '/class-phpass.php';
$wp_hasher = new PasswordHash( 8, true );
}
$hashed = $wp_hasher->HashPassword( $key );
$wpdb->update( $wpdb->users, array( 'user_activation_key' => $hashed ), array( 'user_login' => $user_login ) );

查看 :
$user = check_password_reset_key( $rp_key, $rp_login );

最佳答案

就我而言,我通过使用 WordPress 自己的功能创建密码重置 key 来解决该问题:get_password_reset_key .

它与您的操作方式非常相似,但它还会将当前时间添加到 key 中。所以,而不是

$hashed = $wp_hasher->HashPassword( $key );

它确实:
$hashed = time() . ':' . $wp_hasher->HashPassword( $key );

关于wordpress - WP - check_password_reset_key 函数总是返回过期 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36300200/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com