PHPwind整合最土系统用户同步登录实现方法


Posted in PHP onDecember 08, 2010

上次成功升级了最土商业版,接下来就是整合公司的社区网站,先说明一下我现在工作的地方是个地方社区网站,用的基础程序是PHPWind,我的任务就是让PHPWind和最土登录同步,领导也知道我的技术能力有限,不怎么高要求,所以让我先实现,再考虑其他。赶鸭子上架,开工了。
在我未成熟的程序思考能力下,我首先否定了重写程序这个方法,再次否定了将PHPWind的验证方法引入到最土的方法,最后想出一个折中的办法,将两张表的唯一ID相同:将PHPWind用户表设为主表,最土用户表为外接表,让最土用户ID和PHPWind用户表UID一一对应,通过用户ID来完成接下来的同步工作。
多话不说,上步骤。
第一步:用户同步
新建PHPWind用户,最土同步相应用户,最土ID对应PHPWind用户ID。
register.php

$db->update("insert into tg_user (id,email,username,password,city_id,create_time,enable,realname) values ('".$winduid."','".addslashes($regemail)."','".addslashes($regname)."','".$windpwd."','1','".time()."','Y','".addslashes($regname)."')");

第二步:修改最土登录模式使用Cookie方式
去掉密码,将验证用户名改成用户ID。
ZUser.class.php
$field = strpos($email, '@') ? 'email' : 'id';//username 
$zuituuser = DB::GetTableRow('tg_user', array( 
$field => $email, 
//'password' => $password,

index.php
$login_user = ZUser::GetLogin($_COOKIE['CookieID'], $_POST['password']); 
Session::Set('user_id', $login_user['id']); 
ZLogin::Remember($login_user); 
ZUser::SynLogin($_POST['email'], $_POST['password']);

第三步:登录PHPWind将用户ID写入Cookie值,退出PHPWind将用户ID从Cookie值里清除
login.php/register.php
写入Cookie
setCookie("CookieID", $Winduid);
清除Cookie
setcookie("CookieID", "", time() - 3600);
第四步:修改最土页面连接
header.html
<ul class="links"> 
<li class="username">欢迎您,{$login_user['username']}!</li> 
<li class="account"><a href="/order/index.php" id="myaccount" class="account">我的{$INI['system']['abbreviation']}</a></li> 
<li class="logout"><a href="http://www.cnblogs.com/../login.php?action=quit&verify={$_COOKIE['SetOut']}">退出</a></li> 
</ul> 
<!--{else}--> 
<ul class="links"> 
<li class="login"><a href="/../login.php">登录</a></li> 
<li class="signup"><a href="/../register.php">注册</a></li> 
</ul>

同步登录成功,所有的登录和退出全部在PHPWind内进行,而最土只负责接受传递是否是空值来确认是否登录。
PHP 相关文章推荐
php使用正则表达式提取字符串中尖括号、小括号、中括号、大括号中的字符串
Apr 05 PHP
CodeIgniter错误mysql_connect(): No such file or directory解决方法
Sep 06 PHP
PHP对文件进行加锁、解锁实例
Jan 23 PHP
php延迟静态绑定实例分析
Feb 08 PHP
深入浅析Yii admin的权限控制
Aug 31 PHP
利用PHP生成CSV文件简单示例
Dec 21 PHP
PHP使用mysqli操作MySQL数据库的简单方法
Feb 04 PHP
PHP设计模式之装饰器模式实例详解
Feb 07 PHP
PHP删除数组中指定值的元素常用方法实例分析【4种方法】
Aug 21 PHP
PHP的JSON封装、转变及输出操作示例
Sep 27 PHP
PHP使用openssl扩展实现加解密方法示例
Feb 20 PHP
Thinkphp5框架中引入Markdown编辑器操作示例
Jun 03 PHP
php iconv() : Detected an illegal character in input string
Dec 05 #PHP
php printf输出格式使用说明
Dec 05 #PHP
PHP执行zip与rar解压缩方法实现代码
Dec 05 #PHP
smarty模板嵌套之include与fetch性能测试
Dec 05 #PHP
php 学习资料零碎东西
Dec 04 #PHP
PHP访问MYSQL数据库封装类(附函数说明)
Dec 04 #PHP
PHP验证码类代码( 最新修改,完全定制化! )
Dec 02 #PHP
You might like
php缓存技术详细总结
2013/08/07 PHP
php支付宝接口用法分析
2015/01/04 PHP
php判断当前用户已在别处登录的方法
2015/01/06 PHP
鼠标经过的文本框textbox变色
2009/05/21 Javascript
Moment.js 不容错过的超棒Javascript日期处理类库
2012/04/15 Javascript
js实现拖拽 闭包函数详细介绍
2012/11/25 Javascript
css样式标签和js语法属性区别
2013/11/06 Javascript
node.js中watch机制详解
2014/11/17 Javascript
JavaScript分秒倒计时器实现方法
2015/02/02 Javascript
AngularJS中比较两个数组是否相同
2016/08/24 Javascript
bootstrapfileinput实现文件自动上传
2016/11/08 Javascript
Jquery Easyui搜索框组件SearchBox使用详解(19)
2016/12/17 Javascript
bootstrap multiselect下拉列表功能
2017/08/22 Javascript
vue router自动判断左右翻页转场动画效果
2017/10/10 Javascript
nodejs搭建本地服务器轻松解决跨域问题
2018/03/21 NodeJs
详解Eslint 配置及规则说明
2018/09/10 Javascript
vue 使用lodash实现对象数组深拷贝操作
2020/09/10 Javascript
Openlayers+EasyUI Tree动态实现图层控制
2020/09/28 Javascript
python 实现自动远程登陆scp文件实例代码
2017/03/13 Python
Django读取Mysql数据并显示在前端的实例
2018/05/27 Python
解决python中使用plot画图,图不显示的问题
2018/07/04 Python
python实现简易淘宝购物
2019/11/22 Python
Python生成器实现简单&quot;生产者消费者&quot;模型代码实例
2020/03/27 Python
学习Python爬虫的几点建议
2020/08/05 Python
纯html5+css3下拉导航菜单实现代码
2013/03/18 HTML / CSS
3种方式实现瀑布流布局小结
2019/09/05 HTML / CSS
美国地毯购买网站:Rugs USA
2019/02/23 全球购物
日本订房网站,预订日本星级酒店/温泉旅馆:Relux(支持中文)
2020/01/03 全球购物
大学生活学习的自我评价
2013/12/03 职场文书
大学生创业计划书的范文
2014/01/07 职场文书
银行实习生的自我评价
2014/01/13 职场文书
党的群众路线对照检查材料思想汇报(学校)
2014/10/04 职场文书
单位婚育证明范本
2014/11/21 职场文书
2015年商场工作总结
2015/04/27 职场文书
学校党支部承诺书
2015/04/30 职场文书
Vue3中的Refs和Ref详情
2021/11/11 Vue.js