• 中文
    • English
  • 注册
    • 总打赏排行
    • 今日收益排行

    暂没有数据

  • 牛魔王
    牛魔王
    他太懒了,什么都没有写
  • 查看作者
  • DEDE整合uchome统一mid和uid加激活提示的方法

    这个我只是简单的做下修改 没有对程序文件进行较大的变动。

    首先讲解下原理:大家应该都知道dede会员的mid值是一个自增的字段,也就是每添加一行会员记录这个值自动加1。 那么我们也可以考虑不让它自增,而是在uch的会员登录dede激活的时候读取该会员的uid值,写入mid字段。 这样在会员第一次登录dede的时候写入对dede程序不会有什么影响。

    目前我以,已经注册了uch(即有了uid值),把mid取uid值的方法做一下讲解(其他把uid取mid值 也是一样的原理)

    做这个改进的前提条件:

    关闭dede会员注册功能,只开启ucenter home的注册(这样可以防止会员id错乱)。

    需要修改的文件如下:

    \\member\\index_do.php 找到代码(位置大概是280------281行):

    Copy code`mtype`='个人',`userid`='$username',`pwd`='$password',`uname`='$username',`sex`='男' ,`rank`='10',`money`='$money', `email`='$email', `scores`='$scores', `matt`='0', `face`='',`safequestion`='0',`safeanswer`='',

    在最前面加一句`mid`='$uid', 结果如下面的代码:

    Copy code`mid`='$uid',`mtype`='个人',`userid`='$username',`pwd`='$password',`uname`='$username',`sex`='男' ,`rank`='10',`money`='$money', `email`='$email', `scores`='$scores', `matt`='0', `face`='',`safequestion`='0',`safeanswer`='',

    在这里修改后,uid的值会被写入到dede会员系统中所有的mid中,这样不会造成什么问题,本人已经做了一些测试,不过如果大家有什么疑问的话,还是可以跟帖一起讨论。这个方法不是最完善的 但确实最简单的。

    注意:DEDE的ucenter模块,默认是把其他系统的会员注册成dede的个人会员,如果您要做成企业会员,可以再次开发一点,请接着看下面内容。

    目前在别的系统中注册的会员,第一次访问dede是需要登录的,但登录没有任何提示,而且默认写入成个人会员。为此个人做的是,在dede登录,如果是ucenter中存在的会员而dede不存在,那么暂时不写入数据库,而是提示自动跳转到一个激活页面,这个页面在获取前一步的mid 用户名 密码 这3个值后,再加一个选项表单,个人 企业 2个选项,确定后根据选项把值写入不同的会员数据表里去。

    激活提示的代码修改如下:

    member\\index_do.php 找到代码(位置大概是280------281行):

    找到Copy code//当UC存在用户,而CMS不存在时,就注册一个

    if(!$rs) {

    //会员的默认金币

    改成:Copy code//当UC存在用户,而CMS不存在时,就注册一个

    if(!$rs) {

    ShowMsg("您已经注册,稍候自动进入激活页面!","http://激活页面网址",0,2000);

    exit();

    //会员的默认金币

    上面代码中 2000 跳转等待时间。 激活网址换成自己的。

    这个是思路,由于是朋友问我这个问题,我做到这之后没继续弄下去了,让他自己去解决了,所以如果有人有这个需要的话,可以一起探讨!

    之所以使用ucenter home 作为默认的注册入口,是个人比较喜欢uch会员系统,非常方便做二次开发,而且既然已经整合了dede,那么所有的会员娱乐 交互性的都可以让uch去承担,dede作为一个内容发布系统就可以了。

  • 0
  • 0
  • 0
  • 231
  • 请登录之后再进行评论

    登录
  • 做任务
  • 实时动态
  • 偏好设置
  • 返回顶部
  • 单栏布局 侧栏位置: