PHPwind整合最土系统用户同步登录实现方法
时间:2024-05-11 10:10:53
上次成功升级了最土商业版,接下来就是整合公司的社区网站,先说明一下我现在工作的地方是个地方社区网站,用的基础程序是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内进行,而最土只负责接受传递是否是空值来确认是否登录。
标签:PHPwind,最土系统
0
投稿
猜你喜欢
Python设计模式之桥接模式原理与用法实例分析
2022-03-18 19:02:16
Vue中的 DOM与Diff详情
2023-07-02 16:32:37
解决springboot yml配置 logging.level 报错问题
2021-09-21 21:38:02
面向对象的XHTML与CSS编程
2008-01-11 13:37:00
python去除字符串中的空格、特殊字符和指定字符的三种方法
2022-06-12 20:21:31
使用Python3中的gettext模块翻译Python源码以支持多语言
2022-10-17 21:36:07
python_tkinter弹出对话框创建2
2023-10-17 06:27:29
PYTHON正则表达式 re模块使用说明
2021-11-25 15:06:50
asp Server对象之MapPath方法
2010-07-07 12:28:00
Python采用raw_input读取输入值的方法
2021-09-08 03:19:05
darknet框架中YOLOv3对数据集进行训练和预测详解
2023-11-21 23:11:15
Python基础之字典常见操作经典实例详解
2022-09-01 15:59:18
pyqt5 设置窗体透明控件不透明的操作
2022-04-18 09:16:16
ASP经常用到的函数
2009-07-06 13:00:00
微信小程序实战之打卡时钟的绘制
2024-04-17 10:35:32
详细总结Python常见的安全问题
2022-04-22 14:19:20
JavaScript修改作用域外变量的方法
2024-04-10 16:12:01
用python构建IP代理池详解
2022-10-14 13:44:02
Sql Server 视图数据的增删改查教程
2024-01-22 07:51:05
Python深度学习之Keras模型转换成ONNX模型流程详解
2023-01-02 00:32:44