首页 > php教程 > php手册 > 正文

thinkphp安全登录cookie验证(wordpress方法)

WBOY
发布: 2016-06-07 11:38:59
原创
1186 人浏览过

本代码是为了防止伪造cookie。加一个秘钥来验证..

$s_uid = session("unionUid");<br>         $s_email = session("unionEmail");<br>         if (empty($s_uid) or empty($s_email)) { //若是session获取不到,则到cookie里面去取<br>             $c_uid = cookie("unionUid");<br>             $c_checkcode = cookie("unionCheckcode");//用来安全校验<br>             if (!empty($c_uid) && !empty($c_checkcode)) {<br>                 if ($c_checkcode == getUnionLoginCheckcode($c_uid)) {<br>                     $data = array(<br>                         "userId" => $c_uid,<br>                     );<br>                     $userinfo = getCodeJson($data, 'getSiteUserInfo', '', '2');<br>                     $s_email = $userinfo['userEmail'];<br>                     session("unionUid", $c_uid);<br>                     session("unionEmail", $s_email);<br>                 } else {<br>                     $c_uid = '';<br>                 }<br>             }<br>             $s_uid = $c_uid;<br>         }秘钥获取方法:function getUnionLoginCheckcode($uid) {<br>     $privateKey = S("union_private_key");<br>     if (empty($privateKey)) {<br>         $data = array(<br>             "slug" => "userKey",<br>         );<br>         $rs = getCodeJson($data, 'getGlobalVarBySlug', '', 2);<br>         if ($rs) {<br>             $privateKey = $rs[0]['var']['value'];<br>         } else {<br>             $privateKey = "5edgka9gu724l7uslc";//若是通过接口获取不到秘钥。<br>         }<br>         S("union_private_key", $privateKey, 3600);<br>     }<br>     return md5($uid . $privateKey);<br> }本文转自 素材火http://www.sucaihuo.com
不明白的可以留言给我。。我来解答。。

AD:真正免费,域名+虚机+企业邮箱=0元

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!