Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

Passport 通行证 整合

[复制链接]
 楼主| huozhe3136 发表于 2006-5-30 12:35:06 | 显示全部楼层
header('Location: http://www.myforums.com/api/pass ... /yyy&verify=zzz')
和 header('Location: http://www.myforums.com/api/pass ... /yyy&verify=zzz')
这个变量要分别加到CMS的登陆和登出代码里么?  


这个是加到 cms 的 login.php里的 目的主要是实现两套系统的通讯
回复

使用道具 举报

puyang 发表于 2006-5-30 14:09:50 | 显示全部楼层
是否能够与ASP程序的CMS整合,我记得可以用PHP采用一种办法读取MSSQ或者ACCESS数据库的。(不知道到底用ASP来读取MySQL好,还是用PHP来读取MSSQL好?)
最好能够和动易整合起来。
我想 动易+Discuz!+Xspace 将是最好的建站组合!

我正准备着手这方面的整合工作。希望你能给我一些帮助,非常谢谢!
回复

使用道具 举报

phpspy 发表于 2006-5-30 14:30:30 | 显示全部楼层
原帖由 huozhe3136 于 2006-5-30 12:09 发表




这个login.php是放到 cms里的

这样说Discuz Passport整合需要修改的文件结构是
按楼主说的把相关代码保存为login.php保存到CMS目录下(是否替原CMS登陆文件?)
然后在原CMS下的登陆和登出文件添加
header('Location: http://www.myforums.com/api/pass ... /yyy&verify=zzz')
和 header('Location: http://www.myforums.com/api/pass ... /yyy&verify=zzz')
这样的代码建立数据传输识别码!
最后在DZ论坛后台设置Discuz Passport整合功能选项?
回复

使用道具 举报

 楼主| huozhe3136 发表于 2006-5-30 14:45:14 | 显示全部楼层
是否能够与ASP程序的CMS整合,我记得可以用PHP采用一种办法读取MSSQ或者ACCESS数据库的。(不知道到底用ASP来读取MySQL好,还是用PHP来读取MSSQL好?)
最好能够和动易整合起来。
我想 动易+Discuz!+Xspace 将是最好的建站组合!

我正准备着手这方面的整合工作。希望你能给我一些帮助,非常谢谢!

不需要你直接读取MSSQ或者ACCESS数据库
需要将discuz passpord 的加密和解密函数等 还有 discuz login 整合这一块代码转换为asp程序
把他们放到你的login.asp文件对应的位置中去
head("..............") 这里就是改成 response.redirect("...........") 之类的

[ 本帖最后由 huozhe3136 于 2006-5-30 14:47 编辑 ]
回复

使用道具 举报

 楼主| huozhe3136 发表于 2006-5-30 14:58:20 | 显示全部楼层
这样说Discuz Passport整合需要修改的文件结构是
按楼主说的把相关代码保存为login.php保存到CMS目录下(是否替原CMS登陆文件?)

是的
建议先备份好你的cms 里的login.php 以便恢复时使用
然后在原CMS下的登陆和登出文件添加
header('Location: http://www.myforums.com/api/pass ... /yyy&verify=zzz')
和 header('Location: http://www.myforums.com/api/pass ... /yyy&verify=zzz')
这样的代码建立数据传输识别码!
最后在DZ论坛后台设置Discuz Passport整合功能选项?

其实数据传输在我的代码里已经做好了,
你只需要在这个login.php代码里修改一下$passpordkey这个变量=你的discuz论坛后台设置的passpordkey
下面的这里把 bbs/换成你的论坛安装地址 如:https://discuz.dismall.com/dis_bbs/
header("Location: bbs/api/passport.php?action=login&auth=$auth&forward=$forward&verify=$verify");
回复

使用道具 举报

puyang 发表于 2006-5-30 18:06:33 | 显示全部楼层
原帖由 huozhe3136 于 2006-5-30 14:45 发表

不需要你直接读取MSSQ或者ACCESS数据库
需要将discuz passpord 的加密和解密函数等 还有 discuz login 整合这一块代码转换为asp程序
把他们放到你的login.asp文件对应的位置中去
head("..............& ...


仅仅通过ASP查询数据库来实现登陆,这样的话,MySQL里面就没有用户的资料记录了。是吗?
需要在注册时同时写入两个数据库也需要考虑用一种语言同时写入两种数据库啊。

把这些discuz passpord 的加密和解密函数转换成ASP程序怎么做啊?我只是了解一点PHP语言。ASP才刚刚开始用动易,还没有接触到ASP语言的编写。您能帮个忙吗?如果方便的话。在下感激不尽。

据我了解,如果一个网站同时拥有多个系统的话,最好的方式是编写一套通行证系统。让所有i的系统都在通行证系统中进行登录和登出操作。这样就可以不仅仅限制与PHP语言的与ASP、JSP语言的程序整合。各大系统能够同时读取用户数据,就像网易通行证一样。不知道现在网上有没有这样的系统可以供我们使用,这样的话我们就可以省去不少麻烦来整合一个又一个的不同语言与数据库的系统了。
回复

使用道具 举报

phpspy 发表于 2006-5-31 09:30:33 | 显示全部楼层
原帖由 huozhe3136 于 2006-5-30 14:58 发表

是的
建议先备份好你的cms 里的login.php 以便恢复时使用

其实数据传输在我的代码里已经做好了,
你只需要在这个login.php代码里修改一下$passpordkey这个变量=你的discuz论坛后台设置的passpordkey
下面 ...

我已经按楼主的的帖子做了!只是把楼主的Login.php代码添加到我CMS登陆文件的代码中!后台也做了相应设置!但是会员信息还是不能同步到论坛中~
我现在做的步骤是添加
login.php的代码到我CMS登陆文件中,然后设置后台连接,再关闭论坛注册功能!
回复

使用道具 举报

fanshaoye 发表于 2006-5-31 14:31:37 | 显示全部楼层
技术帖 绝对支持
回复

使用道具 举报

昙雾伊始 发表于 2006-5-31 14:44:36 | 显示全部楼层
学习啊。。
回复

使用道具 举报

fanshaoye 发表于 2006-5-31 14:57:00 | 显示全部楼层
楼主能给下整合eqdkp的方法吗? 谢谢.以下是login.php
这是下载地址:http://www.thewow.cn/soft/1390.html

  1. <?php
  2. /******************************
  3. * EQdkp
  4. * Copyright 2002-2003
  5. * Licensed under the GNU GPL.  See COPYING for full terms.
  6. * ------------------
  7. * login.php
  8. * Began: Sat December 21 2002
  9. *
  10. * $Id: login.php,v 1.11 2003/07/09 16:15:01 tsigo Exp $
  11. *
  12. ******************************/

  13. define('EQDKP_INC', true);
  14. $eqdkp_root_path = './';
  15. include_once($eqdkp_root_path . 'common.php');

  16. // Make our _GET and _POST vars into normal variables
  17. // so we can process a login request through get or post
  18. extract($_GET);
  19. extract($_POST);

  20. if ( (isset($login)) || (isset($logout)) )
  21. {
  22.     if ( isset($login) && ($user->data['user_id'] <= 0) )
  23.     {
  24.         $redirect = ( isset($redirect) ) ? $redirect : 'index.php';
  25.         
  26.         $auto_login = ( !empty($auto_login) ) ? true : false;
  27.       
  28.         if ( !$user->login($username, $password, $auto_login) )
  29.         {
  30.             $tpl->assign_var('META', '<meta http-equiv="refresh" content="3;url=login.php' . $SID . '&redirect=' . $redirect . '">');
  31.             
  32.             message_die($user->lang['invalid_login'], $user->lang['error']);
  33.         }
  34.     }
  35.     elseif ( $user->data['user_id'] != ANONYMOUS )
  36.     {
  37.         $user->destroy();
  38.     }
  39.    
  40.     $redirect_url = ( isset($redirect) ) ? preg_replace('#^.*?redirect=(.+?)&(.+?)$#', '\\1' . $SID . '&\\2', $redirect) : 'index.php';
  41.     redirect($redirect_url);
  42. }

  43. //
  44. // Lost Password Form
  45. //
  46. $eqdkp->set_vars(array(
  47.     'page_title'    => sprintf($user->lang['title_prefix'], $eqdkp->config['guildtag'], $eqdkp->config['dkp_name']).': '.$user->lang['login_title'],
  48.     'template_file' => 'login.html')
  49. );
  50. if ( isset($lost_password) )
  51. {
  52.     $tpl->assign_vars(array(
  53.         'S_LOGIN' => false,
  54.         
  55.         'L_GET_NEW_PASSWORD' => $user->lang['get_new_password'],
  56.         'L_USERNAME'         => $user->lang['username'],
  57.         'L_EMAIL'            => $user->lang['email'],
  58.         'L_SUBMIT'           => $user->lang['submit'],
  59.         'L_RESET'            => $user->lang['reset'])
  60.     );
  61.    
  62.     $eqdkp->display();
  63. }

  64. //
  65. // Login form
  66. //
  67. elseif ( $user->data['user_id'] <= 0 )
  68. {
  69.     $tpl->assign_vars(array(
  70.         'S_LOGIN' => true,
  71.         
  72.         'L_LOGIN'             => $user->lang['login'],
  73.         'L_USERNAME'          => $user->lang['username'],
  74.         'L_PASSWORD'          => $user->lang['password'],
  75.         'L_REMEMBER_PASSWORD' => $user->lang['remember_password'],
  76.         'L_LOGIN'             => $user->lang['login'],
  77.         'L_LOST_PASSWORD'     => $user->lang['lost_password'],
  78.         
  79.         'ONLOAD' => ' onload="javascript:document.post.username.focus()"')
  80.     );
  81.    
  82.     $eqdkp->display();
  83. }
  84. else
  85. {
  86.     redirect('index.php'.$SID);
  87. }
  88. ?>
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-24 07:18 , Processed in 0.028805 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表