gpt4 book ai didi

php - 如何在 PHP 中生成一个在手动重置之前有效的唯一 token ?

转载 作者:行者123 更新时间:2023-11-30 22:48:11 25 4
gpt4 key购买 nike

我需要一些方法来生成一个唯一的 token ,该 token 可以传递到 MySQL 数据库,并存储在那里直到它被手动重置。因此它需要是一个将显示给用户的随机 token ,它应该保持有效,但也有一些可以重置它的功能——比如自动更新、更改然后显示新 token 的“重置 key ”链接。

我正在尝试这段代码,但每次重新加载页面时它都会刷新:

global $wpdb;
global $user_login;
$token = uniqid();
$hashedtoken = md5($token);
$user = $user_login;

$wpdb->insert('wp_tokens',
array('user' => $user, 'token' => $hashedtoken),
array('%s','%s')
);
echo $hashedtoken;

如果重要的话,很明显我正在使用 Wordpress。我什至不确定 PHP 是这里的最佳选择。

编辑:我的问题被标记为类似于 this ,一些很酷的人通知我需要查询数据库以检查用户的 token 是否存在。但是,不知道如何做这些。谢谢。

最佳答案

以下是 PHP 关于使用 uniqid() 生成“随机”字符串的说明:

Warning This function does not create random nor unpredictable strings. This function must not be used for security purposes. Use a cryptographically secure random function/generator and cryptographically secure hash functions to create unpredictable secure IDs.

非随机字符串的散列仍然不是随机的。

这里是关于在 PHP 中生成随机字符串的两个常见问题的链接:

How to create a random string using PHP?

PHP random string generator

关于php - 如何在 PHP 中生成一个在手动重置之前有效的唯一 token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28962874/

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