[PAYLAŞIM]Türkçe ID Dupesini Kökten Engelleme..
Egzotik Forumları

Hayatın içinden...

Giriş yap

Şifremi unuttum



Anket

Egzotik Forum'dan MemNun Musunuz?

[PAYLAŞIM]Türkçe ID Dupesini Kökten Engelleme.. I_vote_lcap96%[PAYLAŞIM]Türkçe ID Dupesini Kökten Engelleme.. I_vote_rcap 96% [ 915 ]
[PAYLAŞIM]Türkçe ID Dupesini Kökten Engelleme.. I_vote_lcap1%[PAYLAŞIM]Türkçe ID Dupesini Kökten Engelleme.. I_vote_rcap 1% [ 7 ]
[PAYLAŞIM]Türkçe ID Dupesini Kökten Engelleme.. I_vote_lcap1%[PAYLAŞIM]Türkçe ID Dupesini Kökten Engelleme.. I_vote_rcap 1% [ 6 ]
[PAYLAŞIM]Türkçe ID Dupesini Kökten Engelleme.. I_vote_lcap3%[PAYLAŞIM]Türkçe ID Dupesini Kökten Engelleme.. I_vote_rcap 3% [ 24 ]

Toplam Oylar : 952


Bağlı değilsiniz. Bağlanın ya da kayıt olun

[PAYLAŞIM]Türkçe ID Dupesini Kökten Engelleme..

Aşağa gitmek  Mesaj [1 sayfadaki 1 sayfası]

nuri504

nuri504
Egzotik Forumdan Sınır Dışı Edilmiş Kullanıcı
Egzotik Forumdan Sınır Dışı Edilmiş Kullanıcı

Selamlar,

Türkçe Karakterlerle Aynı Anda Girip Dupe Yapılabiliyor Bildiğiniz Üzere ve ACCOUNT_LOGIN vb. LOGIN Procedürlerine Yazılan Bir Çok Türkçe ID Engelleyen Kod, Üyelikte veye Oyuna Girerken Problem Yaratıyor ve %100 Çözüm Olmuyordu.

Şimdi İşte Çözüm 

PROC_INSERT_CURRENTUSER'nüzü Açın ve SET @nRet = 1 Yazan Yerin Hemen Üstüne Dikkat Edin Üstüne Altına Değil Alttaki Kodu Yapıştırın ve Kaydedin Bu Kadar.

Alıntı:DECLARE @RAccountID char(21)
/*
Author : AKUMA
Update : 26.07.2009 - 22:45
*/
SELECT @RAccountID = strAccountID FROM ACCOUNT_CHAR WHERE strCharID1 = @CharID and strCharID1 IS NOT NULL
SELECT @RAccountID = strAccountID FROM dbo.ACCOUNT_CHAR WHERE strCharID2 = @CharID and strCharID2 IS NOT NULL
SELECT @RAccountID = strAccountID FROM ACCOUNT_CHAR WHERE strCharID3 = @CharID and strCharID3 IS NOT NULL

IF @RAccountID IS NULL
BEGIN
SET @nRet = 0
RETURN
END
ELSE IF @RAccountID = ''
BEGIN
SET @nRet = 0
RETURN
END
ELSE IF @RAccountID <> @AccountID
BEGIN
SET @nRet = 0
RETURN 
END 

Yapamıyanlar İçin Komple PROC_INSERT_CURRENTUSER (Ekisini Silin Bunu Koyun Yerine - Query Any.)

Procedürü Silemiyenler Bu Şekilde Silebilir.

Kod:
DELETE PROC PROC_INSERT_CURRENTUSER
Kod:
CREATE PROCEDURE PROC_INSERT_CURRENTUSER
@AccountID char(21), 
@CharID char(21),
@ServerNo int,
@ServerIP char(15),
@ClientIP char(15),
@nRet smallint output 
AS
/*
Author : AKUMA
Update : 26.07.2009 - 22:12
*/

INSERT INTO CURRENTUSER (nServerNo, strAccountID, strCharID, strServerIP, strClientIP) VALUES (@ServerNo, @AccountID, @CharID,@ServerIP,@ClientIP)

DECLARE @RAccountID char(21)

SELECT @RAccountID = strAccountID FROM ACCOUNT_CHAR WHERE strCharID1 = @CharID and strCharID1 IS NOT NULL
SELECT @RAccountID = strAccountID FROM dbo.ACCOUNT_CHAR WHERE strCharID2 = @CharID and strCharID2 IS NOT NULL
SELECT @RAccountID = strAccountID FROM ACCOUNT_CHAR WHERE strCharID3 = @CharID and strCharID3 IS NOT NULL

IF @RAccountID IS NULL
BEGIN
 SET @nRet = 0
 RETURN
END
ELSE IF @RAccountID = ''
BEGIN
 SET @nRet = 0
 RETURN
END
ELSE IF @RAccountID <> @AccountID
BEGIN
 SET @nRet = 0
 RETURN 
END
ELSE
BEGIN
 SET @nRet = 1
 RETURN
END

alıntı

http://blackknight.yetkinforum.com/

Sayfa başına dön  Mesaj [1 sayfadaki 1 sayfası]

Bu forumun müsaadesi var:
Bu forumdaki mesajlara cevap veremezsiniz