1. 论坛系统升级为Xenforo,欢迎大家测试!
    排除公告

来自vbzh。org的plog和vbb整合的办法

本帖由 小叶2006-01-11 发布。版面名称:源码讨论

  1. 小叶

    小叶 New Member

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    33
    plog安装及与vbb3统一认证
    plog安装及与vbb3统一认证
    这里的plog是使用的 bb的user表认证,plog无法注册用户,注册用户vbb,修改密码也是在vbb。
    安装
    1、使用安装脚本:wizard.php
    2、安装数据库:install/plog.sql
    修改文件夹权限:tmp,gallery 777
    修改配制文件 config/config.properties.php
    整合
    1、需要安装vbb3,如果是vbb2,适当修改认证,2和3在认证的时候的加密方式不同,这里用到的是vbb3
    2、修改plog
    class/dao/users.class.php
    在文件头增加这个函数
    // by lendy
    function getbbsuser($user, $pass){
    $db = mysql_connect('localhost', 'xxxxxx', 'xxxxxx');
    mysql_select_db('vbb3_xxxxxx',$db);
    $query = "SELECT userid,username,password,email,salt FROM user WHERE username = '".addslashes($user)."'";
    $result = mysql_query($query,$db);
    $bbsuserinfo = mysql_fetch_array($result);
    if($bbsuserinfo){
    if($bbsuserinfo['password']==md5(md5($pass).$bbsuserinfo['salt'])){
    return $bbsuserinfo;
    }
    }
    }
    // by lendy
    修改函数 authenticateUser
    function authenticateUser( $user, $pass )
    {
    // by lendy
    $bbsuser = getbbsuser($user, $pass);
    $bbsusername = $bbsuser['username'];
    $bbsuserid = $bbsuser['userid'];
    $bbsemail = $bbsuser['email'];
    $query = "SELECT * FROM ".$this->getPrefix()."users WHERE user = '".$bbsusername."'";
    $result = $this->_db->Execute( $query );
    if( $result == false )
    return false;
    if( $result->RecordCount() == 1 )
    return true;
    else
    if($bbsusername!=''){
    $query = "INSERT INTO ".$this->getPrefix()."users(id,user,password,email,about) values($bbsuserid,'" . $bbsusername . "','" . md5('12345678') . "','$bbsemail','')";
    $this->_db->Execute( $query );
    //$owner_id = $this->_db->_insertid();
    $owner_id = $bbsuserid;
    $query = "INSERT INTO ".$this->getPrefix()."blogs(id,blog,owner_id,about,settings) values($bbsuserid,'" . $bbsusername . "'s WeBlogs',$owner_id,'',
    'xxxxxxxxxxxxxx'
    )";
    $this->_db->Execute( $query );
    $query = "INSERT INTO ".$this->getPrefix()."users_permissions(id,user_id,blog_id,permission_id) values($bbsuserid,$bbsuserid,$bbsuserid,1)";
    $this->_db->Execute( $query );
    $query = "INSERT INTO ".$this->getPrefix()."bayesian_filter_info(blog_id,total_spam,total_nonspam) values($bbsuserid,0,0)";
    $this->_db->Execute( $query );
    return true;
    }
    return false;
    // by lendy
    }
    修改函数 getUserInfo
    禁用注册
    修改 register.php
    在文件头增加 exit();
    summary.php页面乱码修正
    summary.php中的中文乱码问题出在模版的smarty變數修飾子(Variable Modifier--escape)
    在plog安装根目录的templates/summary目录下,修改如下:
    index.template及bloglist.template两个文件中删除掉|escape:"htmlall"紅色部份的代码即可。
    完毕!
     
  2. yeshou

    yeshou New Member

    注册:
    2005-09-06
    帖子:
    7,067
    赞:
    34
    果然够简单