thinkphp安全登录cookie验证(wordpress方法)
程序员文章站
2022-05-01 18:03:17
...
本代码是为了防止伪造cookie。加一个秘钥来验证..
不明白的可以留言给我。。我来解答。。
$s_uid = session("unionUid");
$s_email = session("unionEmail");
if (empty($s_uid) or empty($s_email)) { //若是session获取不到,则到cookie里面去取
$c_uid = cookie("unionUid");
$c_checkcode = cookie("unionCheckcode");//用来安全校验
if (!empty($c_uid) && !empty($c_checkcode)) {
if ($c_checkcode == getUnionLoginCheckcode($c_uid)) {
$data = array(
"userId" => $c_uid,
);
$userinfo = getCodeJson($data, 'getSiteUserInfo', '', '2');
$s_email = $userinfo['userEmail'];
session("unionUid", $c_uid);
session("unionEmail", $s_email);
} else {
$c_uid = '';
}
}
$s_uid = $c_uid;
}
秘钥获取方法:function getUnionLoginCheckcode($uid) {
$privateKey = S("union_private_key");
if (empty($privateKey)) {
$data = array(
"slug" => "userKey",
);
$rs = getCodeJson($data, 'getGlobalVarBySlug', '', 2);
if ($rs) {
$privateKey = $rs[0]['var']['value'];
} else {
$privateKey = "5edgka9gu724l7uslc";//若是通过接口获取不到秘钥。
}
S("union_private_key", $privateKey, 3600);
}
return md5($uid . $privateKey);
}
本文转自 素材火http://www.sucaihuo.com不明白的可以留言给我。。我来解答。。
AD:真正免费,域名+虚机+企业邮箱=0元
上一篇: 分享一个多语言截取字符串功能
下一篇: ThinkPHP 之 curd 操作
推荐阅读
-
简单的方法让你的后台登录更加安全(php中加session验证)
-
ThinkPHP中利用SESSION实现用户登录验证的方法
-
thinkphp安全登录cookie验证(wordpress方法)
-
ThinkPHP中利用SESSION实现用户登录验证的方法
-
简单的方法让你的后台登录更加安全(php中加session验证)
-
简单的方法让你的后台登录更加安全(php中加session验证)
-
ThinkPHP中利用SESSION实现用户登录验证的方法_PHP教程
-
cookie绕过验证码登录实现方法
-
php 用户cookie登录验证与mysql数据登录验证的方法
-
thinkphp安全登录cookie验证(wordpress方法)