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 相关文章推荐
让你的网站首页自动选择语言转跳
Dec 06 PHP
php中处理mysql_fetch_assoc返回来的数组 不用foreach----echo
May 04 PHP
gd库图片下载类实现下载网页所有图片的php代码
Aug 20 PHP
php去除HTML标签实例
Nov 06 PHP
php目录操作实例代码
Feb 21 PHP
PHP中mysql_field_type()函数用法
Nov 24 PHP
php实现网站顶踩功能的完整前端代码
Jul 19 PHP
Yii操作数据库实现动态获取表名的方法
Mar 29 PHP
Laravel 5.3 学习笔记之 配置
Aug 28 PHP
浅谈PHP的$_SERVER[SERVER_NAME]
Feb 04 PHP
PHP回调函数概念与用法实例分析
Nov 03 PHP
php7中停止php-fpm服务的方法详解
May 09 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和Mysqlweb应用开发核心技术 第1部分 Php基础-1 开始了解php
2011/07/03 PHP
php文件怎么打开 如何执行php文件
2011/12/21 PHP
php类中private属性继承问题分析
2012/11/01 PHP
PHP中使用php://input处理相同name值的表单数据
2015/02/03 PHP
php简单实现sql防注入的方法
2016/04/22 PHP
django中的ajax组件教程详解
2018/10/18 PHP
JQuery浮动DIV提示信息并自动隐藏的代码
2010/08/29 Javascript
jquery validate poshytip 自定义样式
2012/11/26 Javascript
jquery实现瀑布流效果分享
2014/03/26 Javascript
模拟一个类似百度google的模糊搜索下拉列表
2014/04/15 Javascript
JS动态加载当前时间的方法
2015/02/09 Javascript
AngularJs html compiler详解及示例代码
2016/09/01 Javascript
JS如何生成一个不重复的ID的函数
2016/12/25 Javascript
vue异步axios获取的数据渲染到页面的方法
2018/08/09 Javascript
搭建一个nodejs脚手架的方法步骤
2019/06/28 NodeJs
nodejs语言实现验证码生成功能的示例代码
2019/10/13 NodeJs
Python中特殊函数集锦
2015/07/27 Python
Python实现中文数字转换为阿拉伯数字的方法示例
2017/05/26 Python
为什么选择python编程语言入门黑客攻防 给你几个理由!
2018/02/02 Python
Python实现的批量修改文件后缀名操作示例
2018/12/07 Python
Pytorch中.new()的作用详解
2020/02/18 Python
python实现简单的购物程序代码实例
2020/03/03 Python
Python使用os.listdir和os.walk获取文件路径
2020/05/21 Python
Python如何实现大型数组运算(使用NumPy)
2020/07/24 Python
python Cartopy的基础使用详解
2020/11/01 Python
css3模拟jq点击事件的实例代码
2017/07/06 HTML / CSS
MVC的各个部分都有那些技术来实现?如何实现?
2016/04/21 面试题
应届生会计电算化求职信
2013/10/03 职场文书
审计主管岗位职责
2014/01/31 职场文书
校园活动宣传方案
2014/03/28 职场文书
运动会广播稿200米(5篇)
2014/10/15 职场文书
会议接待欢迎词范文
2015/01/26 职场文书
让人感觉高大上的讲话稿怎么写?
2019/07/08 职场文书
2019年特色火锅店的创业计划书模板
2019/08/28 职场文书
详解非极大值抑制算法之Python实现
2021/06/28 Python
Python超详细分步解析随机漫步
2022/03/17 Python