我这个是 .net 同步注册到.net 的 discuz! 里面去 详细的细节还是要自己去研究 的 把用户数据库看几遍 用Visio 把表到如 就看的到关系了
研究把 呵呵
/// <summary>
        /// 同步注册
        /// </summary>
        /// <param name="username">帐号</param>
        /// <param name="gender">性别</param>
        /// <param name="nickname">昵称</param>
        /// <param name="password">密码(未加密)</param>
        /// <param name="groupid">会员隶属组</param>
        /// <param name="email">邮箱</param>
        /// <param name="regip">注册IP</param>
        /// <param name="qq">QQ号</param>
        /// <param name="msn">MSN</param>
        /// <returns>是否注册成功</returns>
        public static bool Register(string username, int gender, string nickname, string password, int groupid, string email, string regip, string qq, string msn)
        {
            return IDC.Register(username, gender, nickname, password, groupid, email, regip, qq, msn);
        }
-----------------------------
public bool Register(string username, int gender, string nickname, string password, int groupid, string email, string regip, string qq, string msn)
        {
            object[,] parsBBS = new object[2, 7] { 
            { "@username","@gender","@nickname","@password","@groupid","@email","@lastip" }, 
            { username, gender, nickname, Motion.DZ.Command.Md5(password), groupid, email, regip } };
            int LastId;            if (Motion.DZ.Command.DBC.vExecuteNonQuery(parsBBS,
                String.Format("insert into [{0}users] (username,gender,nickname,password,groupid,email,regip) values (@username,@gender,@nickname,@password,@groupid,@email,@lastip)", Motion.DZ.Command.RC.Tableprefix), false, out LastId) <= 0)
            {
                return false;
            }            object lid;
            if (LastId <= 0)
            {
                lid = Motion.DZ.Command.DBC.vExecuteScalar(String.Format("select top 1 uid from [{0}users] order by uid desc", Motion.DZ.Command.RC.Tableprefix));
            }
            else
            {
                lid = LastId;
            }            parsBBS = new object[2, 3] { 
            { "@uid", "@qq", "@msn" }, 
            { lid, qq, msn } };
            if (Motion.DZ.Command.DBC.vExecuteNonQuery(parsBBS, String.Format("insert into [{0}userfields] (uid, qq, msn) values (@uid, @qq, @msn)", Motion.DZ.Command.RC.Tableprefix), false) <= 0)
            {
                Motion.DZ.Command.DBC.vExecuteNonQuery(String.Format("delete from [{0}users] where uid={1}", Motion.DZ.Command.RC.Tableprefix, LastId));
                return false;
            }            parsBBS = new object[2, 2] { { "@username", "@userid" }, { username, lid } };
            Motion.DZ.Command.DBC.vExecuteNonQuery(parsBBS, String.Format("update [{0}statistics] set totalusers=totalusers+1, lastusername=@username, lastuserid=@userid", Motion.DZ.Command.RC.Tableprefix), false);
            return true;
        }
-----------------------同步登陆public override bool Login(string username, string password, int expDays, bool inVisisble, string reFerer)
        {
            string Sql = String.Format("select top 1 tpp,ppp,pmsound,invisible,sigstatus,uid from [{1}users] where username='{0}'", username, Motion.DZ.Command.RC.Tableprefix);
            System.Data.DataTable myDt = Motion.DZ.Command.DBC.vDataTable(Sql);
            if (Object.Equals(myDt, null) || myDt.Rows.Count <= 0)
            {
                Motion.DZ.Command.Register(username, 0, String.Empty, password, 11, String.Empty);
                myDt = Motion.DZ.Command.DBC.vDataTable(Sql);
            }
            GetUserInfo userinfo = new GetUserInfo(myDt);
            if (Object.Equals(myDt, null) || myDt.Rows.Count <= 0) return false;            Motion.DZ.Command.DBC.vExecuteNonQuery(String.Format("UPDATE [{0}users] SET [lastvisit]=Now(), [lastip]='{2}' WHERE [username]='{1}'", Motion.DZ.Command.RC.Tableprefix, username, Motion.DZ.Command.RC.UserIP));            return Motion.DZ.Command.WriteLoginCookie(userinfo, inVisisble, reFerer, expDays, password);        }

解决方案 »

  1.   

    我急用discuz5.0 php mysql的呀,急呀! 
      

  2.   

    开源的东西就一点好处 看看注册的源码用C#模仿一个不就OK了 就MYSQL来说 无关dz php还是.net 都是一样的查询语句新的DZ数据结构不熟悉 不过看过源码后应该能理解 呵呵 论坛积分 DZ有算法 在表中储存的不一定准确 
      

  3.   

    同步注册,用同一个数据库同步登陆,用cookie积分直接读数据库啦说实话,bbs推荐phpbb...DZ的代码太乱太复杂,看着眼晕~~