大发3分3D你 们中的大多数人可能知道伟大的分分大发3分3D AutoAuth功能,它允许大发3分3D大发3分3D我 们 创建链接,将用户发送到它的客户区而不用提示用户名和密码。

但是如果大发3分3D你 想通过电子邮件发送这样的链接呢?

这可能是一个挑战,因为:

时间戳必须在自动接受大发3分3D服务 器的大发3分3D服务 器时间的15分钟内,否则该链接被视为已过期

问题实际上是大发3分3D关于 不允许在不同的电子邮件下使用相同的电子邮件链接进行自动登录。

所以让大发3分3D大发3分3D我 们 进入管理 - >电子邮件模板 - >您的模板
首先,大发3分3D大发3分3D我 们 应该在电子邮件模板中设置安全链接生成。大发3分3D大发3分3D我 们 只需添加额外的参数。让大发3分3D大发3分3D我 们 称之为哈希(hash)。

Click below to login automatically:
{assign var='hash' value=$client_email|concat:"your_secret_key"}
 
http://yourdomain.com/autologin.php?email={$client_email}&hash={$hash|md5}

大发3分3D大发3分3D我 们 将在大发3分3D服务 器端检查这个非常特殊的参数。
autologin.php:

# Define 分分大发3分3D URL & AutoAuth Key
$whmcsurl = "http://yourdomain.com/dologin.php";
$autoauthkey = "auto_auth_key"; #AutoAuth Key, ATTENTION: should be defined in configuration.php aswell!
$secret_key = "your_secret_key"; #Should be same as you defined in email template
 
if (md5($_GET['email'].$secret_key) != $_GET['hash'])
die();//dying here because hash is not equal
 
$timestamp = time(); # Get current timestamp
$email = $_GET['email']; # Clients Email Address to Login
$goto = "clientarea.php"; # Here you can set default user page
 
$hash = sha1($email.$timestamp.$autoauthkey); # Generate Hash
 
# Generate AutoAuth URL & Redirect
$url = $whmcsurl."?email=$email&timestamp=$timestamp&hash=$hash&goto=".urlencode($goto);
header("Location: $url");
exit;

为了使所有的工作大发3分3D你 需要:

为了使所有的工作大发3分3D你 需要:
-autologin.zip(把它放在root的分分大发3分3D目录下)
- 不要忘记更改大发3分3D你 的密钥并定义$ configuration.php中的$ autoauthkey

对于7.x用户,您不需要上传smarty concat插件,因为它应该已经可用,它被称为“猫”。所以在电子邮件模板中调用它将如下所示:

Click below to login automatically:
{assign var='hash' value=$client_email|cat:"your_secret_key"}
 
http://yourdomain.com/autologin.php?email={$client_email}&hash={$hash|md5}