MENU |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
USKO Tarzı ACCOUNT_LOGIN [ Account Ban ] |
|
|
Aşağıdaki ACCOUNT_LOGIN prosedürünü db nizde güncellerseniz,1 karakteri banlı olan kullanıcılar "Account Blocked" hatası alacaktır .. Kodu denemedim ama eksiklerim veya yanlışlarım varsa bildirirseniz düzeltebilirim ..
Kod:
--USKO ACCOUNT_LOGIN Cakması --By Trayhoper 25.07.2008 - 20:23 --Updated by Sungyong 25.07.2008 - 20:24
CREATE PROCEDURE ACCOUNT_LOGIN @AccountID varchar(21), @Password varchar(13), @nRet smallint OUTPUT
AS
DECLARE @char1 varchar(21),@char2 varchar(21),@char3 varchar(21) DECLARE @izin1 int,@izin2 int,@izin3 int -- Merhaba strCharID , Isminiz ? Select @char1 = strCharID1 FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID Select @char2 = strCharID2 FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID Select @char3 = strCharID3 FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID -- HoHoHo .. Merhaba Burak.Izin varmı geçmeye ? -- Dur knk bi kontrol edem banlanmışmısın .. Select @izin1 = Authority FROM USERDATA WHERE strUserID = @char1 Select @izin2 = Authority FROM USERDATA WHERE strUserID = @char2 Select @izin3 = Authority FROM USERDATA WHERE strUserID = @char3
IF @izin1 = 255 OR @izin2 = 255 OR @izin3 = 255 BEGIN Set @nRet = 4 RETURN END
delete from currentuser where straccountid = @AccountID
DECLARE @Nation tinyint, @CharNum smallint SET @Nation = 0 SET @CharNum = 0
DECLARE @pwd varchar(13)
SET @pwd = null
SELECT @pwd = strPasswd FROM [dbo].[TB_USER] WHERE strAccountID = @AccountID and idays=6 IF @pwd IS null BEGIN SET @nRet = 0 RETURN END
ELSE IF @pwd <> @Password BEGIN SET @nRet = 0 RETURN END
DECLARE @PremiumServiceDEC varchar(21) select @PremiumServiceDEC = count(straccountid) FROM premium_service WHERE strAccountID = @AccountID
if @PremiumServiceDEC = 0 begin insert into PREMIUM_SERVICE (strAccountID, strType, nDays) VALUES (@AccountID, 1, 3) end
SELECT @Nation = bNation, @CharNum = bCharNum FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID IF @@ROWCOUNT = 0 BEGIN SET @nRet = 1 RETURN END IF @CharNum = 0 BEGIN SET @nRet = 1 RETURN END ELSE BEGIN SET @nRet = @Nation+1 RETURN END GO
Kendi ACCOUNT_LOGIN prosedürünüzüe eklemek isterseniz :
Kod:
CREATE PROCEDURE ACCOUNT_LOGIN @AccountID varchar(21), @Password varchar(13), @nRet smallint OUTPUT
AS
: Altına :
Kod:
DECLARE @char1 varchar(21),@char2 varchar(21),@char3 varchar(21) DECLARE @izin1 int,@izin2 int,@izin3 int -- Merhaba strCharID , Isminiz ? Select @char1 = strCharID1 FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID Select @char2 = strCharID2 FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID Select @char3 = strCharID3 FROM ACCOUNT_CHAR WHERE strAccountID = @AccountID -- HoHoHo .. Merhaba Burak.Izin varmı geçmeye ? -- Dur knk bi kontrol edem banlanmışmısın .. Select @izin1 = Authority FROM USERDATA WHERE strUserID = @char1 Select @izin2 = Authority FROM USERDATA WHERE strUserID = @char2 Select @izin3 = Authority FROM USERDATA WHERE strUserID = @char3
IF @izin1 = 255 OR @izin2 = 255 OR @izin3 = 255 BEGIN Set @nRet = 4 RETURN END
Ekleyin 
Teşekkürler 
KO - CUCE
|
|
|
|
|
|
|
|
|
|
|
|