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

yipeiwu_com6年前PHP代码库
上次成功升级了最土商业版,接下来就是整合公司的社区网站,先说明一下我现在工作的地方是个地方社区网站,用的基础程序是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实现双链表删除与插入节点的方法。分享给大家供大家参考,具体如下: 概述: 双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱...

使用Sphinx对索引进行搜索

Sphinx对索引进行搜索主要分为以下几步:1、用户输入查询语句。 2、对查询语句进行词法分析,语法分析,及语言处理。 3、搜索索引,得到符合语法树的文档。 4、根据得到的文档和查询语句...

用php来改写404错误页让你的页面更友好

404错误,很多人都知道,如果要访问的url不存在的时候就读取显示这个页面.以往在处理404方面我们通常的做法是要麽简单写几行字,而有心人士或许还会对其稍加美化,另外一少部份想投机取巧的...

如何打开php的gd2库

如何打开php的gd2库

第一步:找到 php.ini 通常,该文件在php安装目录下,如果忘记路径可以在你使用的web服务软件上查询。 第二步:用记事本打开该文件,并按 “ctrl+F” 输入 “extens...

php实现excel中rank函数功能的方法

本文实例讲述了php实现excel中rank函数功能的方法。分享给大家供大家参考。具体分析如下: sql语句实现排名是像这样的如: 总分成绩为 195,180,180,161,名次分别为...