为每个用户发送带有唯一参数的URL

时间:2018-09-10 17:07:38

标签: php encryption random hash

我有一个用户数据库,我想给用户发送一封电子邮件,其中将包含一些唯一参数。

我将用户ID,电子邮件,姓名和2个字段存储在数据库中,这些唯一参数。

我正在考虑同时使用id和email创建两个唯一的参数,就像使用哈希/加密/随机播放一样。

md5(我知道它不是安全的,但这不是密码),uniquid,.. etc。

$uniquId = uniquid( $id );
$uniquEmail = md5( $email );

$URL = 'www.example.com/page.php?u='.$uniquId.'&e='.$uniquEmail;

page.php中:

$id = $_GET['u'];
$email = $_GET['e'];

//Check if these values exist in the DB, If exists show the page, Else redirect the user

但是,如果该随机字符串包含&Ugeb=kijd,那么URL看起来像:www.example.com/page.php?u=26737&e=IKd752&uTehD=Hye3,那么$_GET['e']只会是IKd752么?

如果是这样,创建两个唯一参数的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

您可以使用time()函数来获取唯一的整数,然后可以将其与常数相乘,以使数字变长或类似。这种方法的唯一问题是您的密钥将只有数字。