利用discuz自带通行证整合dedecms的方法以及文件下载

整合discuz的通行证:利用discuz自带通行证整合dede的方法以及文件下载

  首先感谢柏拉图提供这么好的免费程序

  在论坛上看到大家很多都想整合discuz。我想柏拉图肯定会弄一个非常完善的dede的通行证。

  在没有出来之前我们就用discuz自带的通行证吧。个人看了一下还是非常不错的。

  一:前提准备以及版本:

  dede版本:3.1 lit版,3.1正式版上测试都通过

  discuz版本。用的是最新的5.0版本

  二:主要涉及几个文件

  1:dede:

  (1)include/config_passport.php

  主要是通行证私有密匙。这个跟安全相关,必须两个系统设置一样才能通行

  在这里主要是 $cfg_pp_encode。假设设置为 $cfg_pp_encode = 'UfJDq4089S'

  (2)member/index_do.php主要处理与discuz同步登陆、同步注册、同步退出

  至于会员的同步修改(主要是密码和email)在同步登陆的时候利用通行证机制已经完成了。所以大家不要再问密码同步怎么办

  (3)新加入文件zxwpassport.php

  里面主要是设置同步discuz开关、以及同步的相关处理函数

  注意:这里相关的跳转地址根据大家测试或者实际地址来修改

  比如:Location: http://localhost/discuz/api/passport.php

  改成你的 Location: http://localhost/bbs/api/passport.php

  $forward     = 'http://localhost/member/index.php';

  改成你的

  $forward     = 'http://www.aaa.com/member/index.php';

  2:discuz

  (1)主要在系统后台管理设置discuz的通行证如图所示

  在扩展设置-》通行证设置那里设置

  

=700) window.open('http://bbs.dedecms.com/attachment/4_850_b46ed20bdd54b8a.gif');" border=0 align=center src="http://bbs.dedecms.com/attachment/4_850_b46ed20bdd54b8a.gif" width=700 onload="if(this.width>'700')this.width='700';">

  注意这里是设置dede的会员登陆、会员注册、会员退出的地址

  关键是设置好通行证私有密匙 记住跟dede的要一致 参考dede的include/config_passport.php的配置。这里假设是UfJDq4089S

  好了把这些看明白之后。大家把zxwpassport.php和修改后的index_do.php下载。放到

  member/目录下就ok了。这里index_do.php只是加入了discuz同步的处理其实很简单

  比如。同步登陆一般都是加入如下的语句就可以。只有在登陆的时候加了一个email提取

  

CODE:

  $row = $dsql->GetOne("select email from #@__member where ID='".$cfg_ml->M_ID."'");

  $dedeemail = $row['email'];

  $dsql->Close();

  //与discuz论坛同步登陆开始

  if ($cfg_discuz==1)

  {

  discuzlogin($userid,$pwd,$dedeemail);

  }//$cfg_discuz==1 结束

  //与disuz论坛同步登陆结束

[Copy to clipboard]

  最后记住在zxwpassport.php函数处理中。设置好自己的回转地址:

  Location: http://localhost/bbs/api/passport.php

  $forward     = 'http://localhost/member/index.php';

  当然也可以写到配置文件中。不过懒得写了。大家自己弄吧。很简单的

  zxwpassport.php和index_do.php文件打包成passport.rar文件了

利用discuz自带通行证整合dedecms的方法以及文件下载

   下载此文件