当前位置: 网学 > 编程文档 > PHP > 正文

php自动注册登录验证机制实现代码

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 13/06/20

网学网为广大网友收集整理了,php自动注册登录验证机制实现代码,希望对大家有所帮助!

背景:

在phpwind站点后台添加一个名为“广告管家”(广告管家为CNZZ的一款广告投放的应用)的应用,整个“广告管家”的应用是通过iframe载入,载入的具体内容根据不同站点显示针对该站点的具体内容,为了提高易用性,有以下的两点要求:
1、首次进入“广告管家”页面自动注册CNZZ账户
2、以后每次进入“广告管家”页面默认为首次注册的CNZZ账户


设计:


1、尝试载入用户帐号和密码信息,此信息保存在数据库或是文本缓存中
2、当存在用户名和密码的情况下向cnzz发送一个请求用来获取Token,将此Token值加入到iframe的地址中,如此就能载入针对该用户的页面
3、当不存在用户名和敏吗的情况下待用cnzz的注册接口,注册成功后返回token,也同样将此Token作为iframe地址的一部分用来载入页面
4、Token值有效期只有一次,即使被截取了也能保证安全性
代码:
复制代码 代码如下:
$urls = parse_url($db_bbsurl);
$domain = $urls[''host''];
include_once (R_P .''require/admvclient.php'');
$adm_oem= new Cnzz_Adm_Oem();
//判断config文件是否存在用户密码
pwCache::getData(D_P . "data/bbscache/adm_config.php");//用户名密码 配置文件
if (isset($adm_user) && isset($adm_pwd)) {
$request = array("adm_user"=>$adm_user,"adm_pwd"=>$adm_pwd,''cms''=>''pw'');
$token = $adm_oem->get_appkey_once($request);
if ($token<0){
if($token==-1){
adminmsg(''传递参数为空或传递参数非数字'');
}else if($token==-2){
adminmsg(''传递参数password错误'');
}
}else{
$apikey = $token[''adm_key''];
}
}else{
$Key = md5($domain.''KclGiq7H'');
$request = array(''cms''=>''pw'',''domain''=>$domain,''key''=>$Key);
$token = $adm_oem->reg_user_once($request);
if ($token<0){//异常
if($token==-1){
adminmsg(''key有误'');
} else if($token==-2){
adminmsg(''域名长度有误(1~64)'');
} elseif($token==-3){
adminmsg(''域名输入有误(比如输入汉字)'');
} elseif($token==-4){
adminmsg(''域名插入数据库有误'');
} elseif($token==-5){
adminmsg(''IP用户调用页面超过阀值,阀值暂定为10'');
}
} elseif (is_array($token) && isset($token)){
$adm_user = $token[''adm_user''];
$adm_pwd = $token[''adm_pwd''];
$apikey = $token[''adm_key''];
pwCache::setData(D_P.''data/bbscache/adm_config.php'',"<?php\r\n\$adm_user=".$adm_user.";\r\n\$adm_pwd=".$adm_pwd."\r\n?>");
}
}

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号