您的位置 首页 织梦教程

DedeCMS手动整合discuz7.x+uchome2.0的方法

大家好!现在很多站长朋友喜欢使用dedecms和discuz,但截至到今年5月,官方都没有提供很好的整合方案; 于是我就自己手动对它们进行了整合,我曾今在5月份发布了discuz7+dedecms5.3的整合

大家好!现在很多站长朋友喜欢使用dedecms和discuz,但截至到今年5月,官方都没有提供很好的整合方案; 于是我就自己手动对它们进行了整合,我曾今在5月份发布了discuz7+dedecms5.3的整合 […]

大家好!现在很多站长朋友喜欢使用dedecms和discuz,但截至到今年5月,官方都没有提供很好的整合方案; 于是我就自己手动对它们进行了整合,我曾今在5月份发布了discuz7+dedecms5.3的整合程序,但最近有大部分使用本程序的站长朋友找过我,原因是dedecms官方升级到5.5了,原程序不能正常使用了;我看了一下,5.5版本的注册页面有个参数变了,把参数名改一下就OK了;但是考虑到程序再次升级的问题,我有换了一种方式对其整合,还加上了uchome哦;这次方法是直接写入数据库的方式,不管官方再怎样升级,只要数据表名和字段名没有变,程序都可以依然正常使用哦好了,不废话了,开始:注册整合开始:创建一文件zhuce.php,其作用定义dedecms,discuz,uchome的域名,和同步登陆和同步退出;修改dedecms的注册页面member/reg_new.php和uchome的注册页面source/do_register.php<?include("zhuce.php")?>1<div style="display:none">23<form action="<?=$bbsurl?>/register.php"name="zhuce">45<input name="rf"value="<?=$_SERVER['SERVER_NAME']?>"><form>67</div><?="<script>zhuce.submit();</script>"?>其中有个rf参数,作用是获取用户是从哪里注册的,等待注册成功跳转回去;修改discuz注册页面模板templates/default/register.htm<label><em>帐号类型:</em>01<inputtype="radio"name="mtype"value="个人"checked>个人0203<inputtype="radio"name="mtype"value="企业">企业</label>0405<label><em>{lang username}:</em><inputtype="text"id="username"name="username"autocomplete="off"size="25"maxlength="15"value=""onBlur="checkusername()"tabindex="1"class="txt"/> *</label>0607<label><em>昵称/公司:</em><inputtype="text"name="nickname"autocomplete="off"size="25"maxlength="15"tabindex="1"class="txt"/> *</label>0809<label><em>登陆{lang password}:</em><inputtype="password"name="password"size="25"id="password"onkeypress="detectcapslock(event, this)"tabindex="1"class="txt"/> *</label>1011<label><em>{lang password_confirm}:</em><inputtype="password"name="password2"size="25"id="password2"onkeypress="detectcapslock(event, this)"tabindex="1"value=""class="txt"/> *</label>1213<label><em>{lang email}:</em><inputtype="text"name="email"autocomplete="off"size="25"id="email"onBlur="checkemail()"tabindex="1"class="txt"/> *</label>修改discuz的注册页面:register.php,加上以下代码:$depas=md5($_POST[password]);//dedecms采用md5方式对其密码加密$db->query("INSERT INTO $detable (mtype,userid,pwd,uname,email)VALUES ('$_POST[mtype]','$username','$depas','$_POST[nickname]','$email')");//写入dedecms的用户表修改原代码$db->query("REPLACE INTO {$tablepre}memberfields (uid, authstr $fieldadd1) VALUES ('$uid', '$authstr' $fieldadd2)");为以下代码,其作用是同是添加昵称并把昵称也写在discuz的表里面;$db->query("REPLACE INTO {$tablepre}memberfields (uid,nickname,authstr $fieldadd1) VALUES ('$uid','$_POST[nickname]','$authstr' $fieldadd2)");再加上以下代码,其作用是用于跳转,用从哪来注册的跳转回哪里去if($_POST[rf]){echo "<b><font color=red size=36>注册成功!!</font></b><script>location=\\"http://$_POST[rf]\\";</script>";}注册整合结束;开始头像调用整合:修改dedecms用户调用文件 member/ajax_loginsta.php$mid = $cfg_ml->fields['mid'];//获取用户的id$face = $ucurl."/avatar.php?uid=".$mid."&size=small";修改dedecms首页模板 templets/default/index.htm<!– /userlogin –>01<script language="javascript"type="text/javascript">CheckLogin();</script>0203<div class="latestlogin"> <strong>最近登陆的会员</strong>0405<ul class="e7">0607{dede:php}0809while($rs = $db->GetArray('user')){1011echo"<li><a href=\\""$homeurl."/".$rs[mid]."\\" target=\\"_blank\\"><img src=\\"".$ucurl."/avatar.php?uid=".$rs[mid]."&size=small"\\" alt='".$rs[uname]."的空间' width=\\"52\\" height=\\"52\\" />".$rs[uname]."</a></li>";}1213{/dede:php}1415</ul>1617</div>1819<!-- /latestlogin -->头像调用整合结束,开始整合同步登陆:如何实现请看下面zhuce.php解释;修改dedecms的登陆页面 member/index_do.php 在提示登陆成功的代码后面加上:echo "<iframe src=".$bbsurl."/zhuce.php?s=in&u=".$username."></iframe>."修改discuz的登陆页面 logging.php 在提示登陆成功的代码后面加上:echo "<iframe src=".$deurl."/zhuce.php?s=in&u=".$username."&p=".$password."></iframe>"同步登陆整合结束,开始整合同步退出:如何实现请看下面zhuce.php解释;修改dedecms的登陆页面 member/index_do.php 在提示成功退出的代码后面加上:echo "<iframe src=".$bbsurl."/zhuce.php?s=out></iframe>"修改discuz的登陆页面 logging.php 在提示成功退出的代码后面加上:echo "<iframe src=".$deurl."/zhuce.php?s=out></iframe>"同步退出整合完毕!!zhuce.php解释:<?$bbsurl="http://bbs.my.com";//填写您的discuz的完整URL,前面加“http://”,后面不要加“/”$ucurl="http://www.my.com/ucenter";//填写您的UCenter的完整URL,前面加“http://”,后面不要加“/”$homeurl="http://home.my.com";//填写您的UChome的完整URL,前面加“http://”,后面不要加“/”if($_GET[s]=="in"){include("member/config.php");//判断是登陆$cfg_ml = new MemberLogin(7*3600);$rs = $cfg_ml->CheckUser($_GET[u], $_GET[p]);//写cookies}if($_GET[s]=="out"){include("member/config.php");//判断是退出$cfg_ml->ExitCookie();//清cookies}?><?$deurl="http://www.my.com";//填写您的dedecms的完整URL,前面加“http://”,后面不要加“/”$detable="dede_"."member";//填写您的dedecms表名前缀if($_GET[s]=="in"){include("include/common.inc.php");//判断是登陆$query0 = $db->query("SELECT * FROM {$tablepre}members WHERE username='$_GET[u]'");while($user0 = $db->fetch_array($query0)) {$uid0=$user0[uid];$pwd0=$user0[password];}dsetcookie('cookietime', $cookietime, 31536000);//提取出用户信息dsetcookie('auth', authcode("$pwd0\\t$discuz_secques\\t$uid0", 'ENCODE'), $cookietime, 1, true);//写cookies}if($_GET[s]=="out"){include("include/common.inc.php");//判断是退出clearcookies();//清cookies}?>登陆或退出的时候,同时做cookies操作整合完毕!

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

作者: 致命的织梦

为您推荐

DedeCMS上传图片集弹出框显示302与FILEID:X解决办法

DedeCMS上传图片集弹出框显示302与FILEID:X解决办法

织梦DedeCMS 上传图片集弹出框显示302与FILEID:X解决办法 弹出框显示302解决办法 /uploadsafe.inc.php 里的第45行的 imtypes 改成imgtypes 加个g然后更新一下系统缓存,解决 不过 360极速浏览器测试不

DedeCms织梦使用关键词关连文章的方法

用了好几年的织梦系统,一直对织梦使用关键词关连文章这个功能忽略着,知道有这个功能但很少用,最近想给文章中的关键字做个关联,一直手动觉得太麻烦了,突然想起了这个功能。在织梦论坛中#搜索了半天,都没有一个使用方法,好多人说是程序错误没法使用。转了一圈论坛和搜索引擎也没得到答案,还是自己研究了,研究了半天还好终于研究通了,现将使用方法发送上来供大家参考。(注笔者使用的是织梦5.7版本) 第一步:系统 系统基本参数 性

DedeCMS修改文章时取消提取第一张图片为缩略图

之前在织梦的后台发布新文章,发现如果不手动指定缩略图,系统会自动提取第一张图片为缩略图,这个有的时候很智能,有的时候就显得很鸡肋了。 如果要取消这个功能,其实也很简

DedeCMS列表页自动统计当前栏目文章总数的方法

本次教程可以通过该方法在列表页内显示该栏目共有多少篇文章,有助于提升用户体验。比如说我一个文章列表下面有10篇文章,就自动统计出10篇,到20篇的时候自动统计成20篇。 实现

DedeCMS新发布图集排序在最前的方法

DedeCMS新发布图集排序在最前的方法

由于本人做的网站需要经常增加图片。每次增加新的图片(注意:是往已经建立好的图集里面增加新的图片而不是创建新图集)默认都是排列在最后面,现总结出如何让新加的图片显示在

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

返回顶部