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

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

第一步:用户同步

新建PHPWind用户,最土同步相应用户,最土ID对应PHPWind用户ID。
register.PHP
<div class="codetitle"><a style="CURSOR: pointer" data="6190" class="copybut" id="copybut6190" onclick="doCopy('code6190')"> 代码如下:
<div class="codebody" id="code6190">
$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
<div class="codetitle"><a style="CURSOR: pointer" data="97904" class="copybut" id="copybut97904" onclick="doCopy('code97904')"> 代码如下:
<div class="codebody" id="code97904">
$field = strpos($email,'@') ? 'email' : 'id';//username
$zuituuser = DB::GetTableRow('tg_user',array(
$field => $email,
//'password' => $password,

index.PHP
<div class="codetitle"><a style="CURSOR: pointer" data="75877" class="copybut" id="copybut75877" onclick="doCopy('code75877')"> 代码如下:
<div class="codebody" id="code75877">
$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
<div class="codetitle"><a style="CURSOR: pointer" data="15398" class="copybut" id="copybut15398" onclick="doCopy('code15398')"> 代码如下:<div class="codebody" id="code15398">
<ul class="links">
<li class="username">欢迎您,{$login_user['username']}!
<li class="account"><a href="/order/index.php" id="myaccount" class="account">我的{$INI['system']['abbreviation']}
<li class="logout"><a href="http://www.cnblogs.com/../login.php?action=quit&verify={$_COOKIE['SetOut']}"&gt;退出


<ul class="links">
<li class="login"><a href="/../login.php">登录
<li class="signup"><a href="/../register.php">注册


同步登录成功,所有的登录退出全部在PHPWind内进行,而最土只负责接受传递是否是空值来确认是否登录

PHPwind最土系统

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...