搜索
 找回密码
 加入

1310 ACCOUNT_LOGIN & LOGOUT Prosedürü (Sorunsuz Md5 Düzenlendi)

v123 2010-1-3 16:00:43 1476
Bildiginiz Gibi 1310 Gittikçe Gelişiyor..

Login Prosedüründe Md5 Şifreleme Oldugu İcin Herkez Sorun Çekiyor.. Bnde Bunu Paylaşıyorum..

Account_Login


Kod:
CREATE PROCEDURE [dbo].[ACCOUNT_LOGIN]
        @AccountID        varchar(21),
        @Password        varchar(32),
        @nRet                smallint        OUTPUT
AS
DECLARE @pwd varchar(32), @Authority int, @count int, @Nation int, @CharNum int
BEGIN

        -- <RETRIEVE ACCOUNT DATA>
        SELECT @pwd = strPasswd, @Authority = strAuthority FROM TB_USER WHERE strAccountID = @AccountID
        -- </RETRIEVE ACCOUNT DATA>

        -- <ACCOUNT DOES NOT EXIST>
        IF @@ROWCOUNT = 0
        BEGIN
                SET @nRet = 0
                RETURN
        END
        -- </ACCOUNT DOES NOT EXIST>

        -- <BANNED>
        IF @Authority = 255
        BEGIN
                SET @nRet = 0
                RETURN
        END
        -- </BANNED>
       
        -- <EMPTY PASSWORD>
        ELSE IF @pwd IS NULL
        BEGIN
                SET @nRet = 0
                RETURN
        END
        -- </EMPTY PASSWORD>

        -- <INVALID PASSWORD>       
        ELSE IF master.dbo.fn_md5(@Password) <> @pwd
        BEGIN
                SET @nRet = 0
                RETURN
        END
        -- </INVALID PASSWORD>

        -- <RETRIEVE NATION AND CHARACTER COUNT>
        SELECT @Nation = bNation, @CharNum = bCharNum FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID
        -- </RETRIEVE NATION AND CHARACTER COUNT>

        -- <NO NATION SELECTED>
        IF @@ROWCOUNT = 0 OR @CharNum = 0
        BEGIN
                SET @nRet = 1
        END
        -- </NO NATION SELECTED>
        ELSE
        -- <NATION ALREADY SELECTED>
        BEGIN
                SET @nRet = @Nation + 1
        END
        -- </NATION ALREADY SELECTED>
END
GO

ACCOUNT_LOGOUT


Kod:
CREATE PROCEDURE [dbo].[ACCOUNT_LOGOUT]
        @AccountID        varchar(21),
        @id                        int,
        @nRet smallint        OUTPUT,
        @a          smallint        OUTPUT
AS

EXEC RANK_KNIGHTS
EXEC USER_KNIGHTS_RATING_UPDATE
EXEC KNIGHTS_RATING_UPDATE
EXEC UPDATE_MANNERPOINT_RANK
EXEC UPDATE_PERSONAL_RANK

BEGIN TRAN
        DELETE FROM CURRENTUSER WHERE strAccountID = @AccountID
COMMIT TRAN
SET @nRet = 1
SET @a = 1
GO

6 回复

214550663
2009-11-8 22:10:01
点击查看详情
迅速灭绝0回复,顺便鄙视看我帖子不回帖的人!

这个是不是不需要mp.dll就可以自动完成MD5加解密的储存过程呢?

唉,现在的人都不想研究骑士了,只想拿着自己的命根子卖钱,悲哀!
leonjaykai
2009-11-9 09:06:47
我想研究~~~但在台灣一個人研究這個好累  在這版上問了  得到回答或提示的也不多   權限不夠大 看到的有限  要賣我的倒有出現過 ㄏㄏㄏ   你肯教嗎??
214550663
2009-11-9 11:01:08
恩,可以没问题的,现在我正在找个好点的服务端
28085279
2009-11-9 12:50:21
问题是这发出来的东西看不出来该干嘛用的
leonjaykai
2009-11-10 16:50:24
214550663  qq多少啊~~  不然加我  可請教您說  qq 858776792  謝囉~
duwanli2000
2010-1-3 16:00:43
晕倒,我没加密的工具呀,谁有发一个
高级模式
游客