PRİVATE-AMPED.TR.GG | PRİVATE SERVER DONANIM VE DOSYALARI
  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
 
   
 
Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol