الموقع العربي الاول للعبة Silkroad Online

الموقع العربي الاول للعبة Silkroad Online (https://silkroad4arab.com/vb/index.php)
-   قسم الاسئلة و الاستفسارات لعمل السيرفرات الخاصة (https://silkroad4arab.com/vb/forumdisplay.php?f=226)
-   -   بخصوص بلوك شات (https://silkroad4arab.com/vb/showthread.php?t=583121)

M.HADAD 04-04-2015 05:47 PM

بخصوص بلوك شات
 
لما بعمل لاى حد بلوك شات بيكتبلى تحت فى SMC
punishment jop [ register ] is Failed : db error

Dev. iLegend 04-04-2015 05:55 PM

رد: بخصوص بلوك شات
 
Execute These Queries


كود PHP:

USE [SRO_VT_ACCOUNT]
GO
/****** Object:  StoredProcedure [dbo].[_RegisterPunishment]    Script Date: 04/04/2015 16:53:13 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- 
-----------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
ALTER procedure [dbo].[_RegisterPunishment]
    @
UserJID     int,
    @
Type          tinyint,
    @
Executor    varchar(128),
    @
Shard        smallint,
    @
CharName    varchar(16),
    @
CharInfo    varchar(256),
    @
PosInfo    varchar(64),
    @
Guide        varchar(512),
    @
Description    varchar(1024),
    @
RaiseTime    datetime,
    @
BlockStartTime    datetime,
    @
BlockEndTime    datetime,
    @
PunishTime    datetime
as
    if( 
exists( select UserJID from _BlockedUser with(NOLOCK) where UserJID = @UserJID and Type = @Type))
    
begin
        select 
-1    
        
RETURN
    
end
    
declare @NewSerialNo int    
    set 
@NewSerialNo = 0
    
    insert _Punishment values
( @UserJID, @Type, @Executor, @Shard, @CharName, @CharInfo,
                @
PosInfo, @Guide, @Description, @RaiseTime, @BlockStartTime, @BlockEndTime, @PunishTime, 0)
    
set @NewSerialNo = @@identity
    
if( @@rowcount = 0 or @@error <> 0 or @NewSerialNo = 0 or @NewSerialNo is null)
    
begin
        select 
-2    
        
return
    
end
    
declare @UserID varchar(128)
    
set @UserID = (SELECT StrUserID FROM TB_User where JID = @UserJID)
    if( @@
rowcount = 0 or @@error <> 0 or @UserID is null)
    
begin
        select 
- 2
        
return
    
end
    insert _BlockedUser values
( @UserJID, @UserID, @Type, @NewSerialNo, @BlockStartTime, @BlockEndTime)
    
select 0 


كود PHP:

USE [SRO_VT_ACCOUNT]
GO
/****** Object:  StoredProcedure [dbo].[_RegisterAutomatedPunishment]    Script Date: 04/04/2015 16:53:03 ******/
SET ANSI_NULLS OFF
GO
SET QUOTED_IDENTIFIER OFF
GO

ALTER PROCEDURE 
[dbo].[_RegisterAutomatedPunishment]
    @
Account    VARCHAR(128),
    @
Type          TINYINT,
    @
Executor    VARCHAR(128),
    @
Guide        VARCHAR(512),
    @
Description    VARCHAR(1024),
    @
BlockTimeElapse    INT
--    @BlockStartTime    DATETIME,
--    @
BlockEndTime    DATETIME
AS
    ------------------------------------------------------------------------------------
    -- 
novice with deepdark
    
-- depend only on db time.. we don't have to sync the time between DB and GlobalManager for accuracy
    DECLARE @BlockStartTime    VARCHAR(128)
    DECLARE @BlockEndTime    VARCHAR(128)

    SET @BlockStartTime     = getdate()
    SET @BlockEndTime    = dateadd( mi, @BlockTimeElapse, @BlockStartTime)
    ------------------------------------------------------------------------------------

    DECLARE @UserJID INT
    SET @UserJID = 0

    -- أپ¸أ€çأ‡أڈ´أ‚ أ„³¸¯أ…أچ أ€أŒ¸§أ€أژأپأ¶? JID ¾÷¾îآ؟أ€أ€أڑ.
    SELECT @UserJID = JID FROM TB_User WITH (NOLOCK) WHERE strUserID = @Account
    IF @@ERROR <> 0 OR @UserJID = 0
    BEGIN
        SELECT -1
        RETURN
    END

    -- أ€أŒ¹أŒ آ؛أ*·° °أ‰¸° أ€¯أ€أ؛أ€أŒ³أ„?
    IF( EXISTS ( SELECT UserJID FROM _BlockedUser WITH (NOLOCK) WHERE UserJID = @UserJID AND Type = @Type))
    BEGIN
        SELECT -2
        RETURN
    END

    DECLARE @NewSerialNo int    
    SET @NewSerialNo = 0
    
    INSERT _Punishment values( @UserJID, @Type, @Executor, 0, '', '', '', @Guide, @Description, @BlockStartTime, @BlockStartTime, @BlockEndTime, @BlockStartTime, 0)
    set @NewSerialNo = @@identity
    if( @@rowcount = 0 or @@error <> 0 or @NewSerialNo = 0 or @NewSerialNo is null)
    BEGIN
        SELECT -3
        RETURN        
    END

    INSERT _BlockedUser values( @UserJID, @Account, @Type, @NewSerialNo, @BlockStartTime, @BlockEndTime)
    if( @@rowcount = 0 or @@error <> 0 )
    BEGIN
        SELECT -4
        RETURN        
    END

    SELECT @UserJID 


M.HADAD 04-04-2015 06:36 PM

رد: بخصوص بلوك شات
 
الف شكرياغالى

Hamza FiGo 04-04-2015 06:42 PM

رد: بخصوص بلوك شات
 
تمام يغلق

##


الساعة الآن 11:16 PM.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2026, vBulletin Solutions, Inc.