加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

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

发布时间:2021-05-26 21:39:48 所属栏目:教程 来源:网络整理
导读:各人好!此刻许多站长伴侣喜好行使 dedecms 和discuz,但制止到本年5月,官方都没有提供很好的整合方案; 于是我就本技艺动对它们举办了整合,我曾今在5月份宣布了discuz7+dedecms5.3的整合措施,但最近有大部门行使本措施的站长伴侣找过我,缘故起因是dedecms官

各人好!此刻许多站长伴侣喜好行使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")?>

<div style="display:none">

<form action="<?=$bbsurl?>/register.php" name="zhuce">

<input name="rf" value="<?=$_SERVER['SERVER_NAME']?>"><form>

</div>

<?="<script>zhuce.submit();</script>"?>
个中有个rf参数,浸染是获取用户是从那边注册的,守候注册乐成跳转归去;
修改discuz注册页面模板templates/default/register.htm<label><em>帐号范例:</em>

<input type="radio" name="mtype" value="小我私人" checked>小我私人

<input type="radio" name="mtype" value="企业">企业</label>

<label><em>{lang username}:</em><input type="text" id="username" name="username" autocomplete="off" size="25" maxlength="15" value="" onBlur="checkusername()" tabindex="1" class="txt" /> *</label>

<label><em>昵称/公司:</em><input type="text" name="nickname" autocomplete="off" size="25" maxlength="15" tabindex="1" class="txt" /> *</label>

<label><em>登岸{lang password}:</em><input type="password" name="password" size="25" id="password" onkeypress="detectcapslock(event,this)" tabindex="1" class="txt" /> *</label>

<label><em>{lang password_confirm}:</em><input type="password" name="password2" size="25" id="password2" onkeypress="detectcapslock(event,this)" tabindex="1" value="" class="txt" /> *</label>

<label><em>{lang email}:</em><input type="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' $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 -->

<script language="javascript" type="text/javascript">CheckLogin();</script>

<div class="latestlogin"> <strong>最近登岸的会员</strong>

<ul class="e7">

{dede:php}

while($rs = $db->GetArray('user')){

echo "<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>";}

{/dede:php}

</ul>

</div>

<!-- /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 $discuz_secques $uid0",'ENCODE'),1,true);//写cookies

}

if($_GET[s]=="out"){include("include/common.inc.php");//判定是退出

clearcookies();//清cookies

}

 

?>
登岸或退出的时辰,同时做cookies操纵
整合完毕!

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读