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下读取文本文件的代码
Jul 02 PHP
php字符串分割函数explode的实例代码
Feb 07 PHP
destoon官方标签大全
Jun 20 PHP
PHP使用xmllint命令处理xml与html的方法
Dec 15 PHP
PHP实现自动识别Restful API的返回内容类型
Feb 07 PHP
是 WordPress 让 PHP 更流行了 而不是框架
Feb 03 PHP
php源码 fsockopen获取网页内容实例详解
Sep 24 PHP
Thinkphp事务操作实例(推荐)
Apr 01 PHP
PHP数据库操作四:mongodb用法分析
Aug 16 PHP
php格式文件打开的四种方法
Feb 24 PHP
PHP CURL中传递cookie的方法步骤
May 09 PHP
laravel 实现用户登录注销并限制功能
Oct 24 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 excel reader读取excel内容存入数据库实现代码
2012/12/06 PHP
php实现统计邮件大小的方法
2013/08/06 PHP
php中使用session防止用户非法登录后台的方法
2015/01/27 PHP
yii2利用自带UploadedFile实现上传图片的示例
2017/02/16 PHP
常见JS效果之图片减速度滚动实现代码
2011/12/08 Javascript
JQuery表格拖动调整列宽效果(自己动手写的)
2014/09/01 Javascript
node.js中的buffer.slice方法使用说明
2014/12/10 Javascript
js中document.write的那点事
2014/12/12 Javascript
node.js [superAgent] 请求使用示例
2015/03/13 Javascript
JavaScript实现为指定对象添加多个事件处理程序的方法
2015/04/17 Javascript
详解js中class的多种函数封装方法
2016/01/03 Javascript
springMVC结合AjaxForm上传文件
2016/07/12 Javascript
xtemplate node.js 的使用方法实例解析
2016/08/22 Javascript
AngularJs 动态加载模块和依赖
2016/09/15 Javascript
js实现的简练高效拖拽功能示例
2016/12/21 Javascript
jQuery实现键盘回车搜索功能
2017/07/25 jQuery
详解Angular调试技巧之报错404(not found)
2018/01/31 Javascript
Vue在页面右上角实现可悬浮/隐藏的系统菜单
2018/05/04 Javascript
jQuery实现table表格checkbox全选的方法分析
2018/07/04 jQuery
JavaScript对象字面量和构造函数原理与用法详解
2020/04/18 Javascript
基于python进行桶排序与基数排序的总结
2018/05/29 Python
打包python 加icon 去掉cmd黑窗口方法
2019/06/24 Python
Django项目后台不挂断运行的方法
2019/08/31 Python
python GUI库图形界面开发之PyQt5不规则窗口实现与显示GIF动画的详细方法与实例
2020/03/09 Python
利用pipenv和pyenv管理多个相互独立的Python虚拟开发环境
2020/11/01 Python
德国珠宝和配件商店:Styleserver
2021/02/23 全球购物
机电一体化专业推荐信
2013/12/03 职场文书
应用艺术专业个人的自我评价
2014/01/03 职场文书
超市开学活动方案
2014/03/01 职场文书
《三袋麦子》教学反思
2014/03/02 职场文书
初三新学期计划书
2014/05/03 职场文书
领导干部群众路线个人对照检查材料思想汇报
2014/09/30 职场文书
小学体育队列队形教学反思
2016/02/16 职场文书
高三物理教学反思
2016/02/20 职场文书
迎客户欢迎词三篇
2019/09/27 职场文书
使用php的mail()函数实现发送邮件功能
2021/06/03 PHP