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

الموقع العربي الاول للعبة Silkroad Online (https://silkroad4arab.com/vb/index.php)
-   قسم الشروحات و البرامج المستخدمة في عمل السيرفرات الخاصة (https://silkroad4arab.com/vb/forumdisplay.php?f=289)
-   -   حصريا : تسجيل الـ IPs لجميع الشخصيات على سيرفرك (https://silkroad4arab.com/vb/showthread.php?t=547955)

Midget1337 12-02-2014 04:34 AM

حصريا : تسجيل الـ IPs لجميع الشخصيات على سيرفرك
 


بسم الله الرحمن الرحيم

في الموضوع دا هوريكم ازاي تعملوا تسجيل لجميع الايبيهات لأي حد يخش السيرفر عندك (غير الايبي بتاع عمل الأكونت اللي هوا في TB_USER )..بمعنى ان كل ما واحد يفتح شخصية يتسجل الايبي اللي هوا داخل منه.

النتيجة النهائية :

http://img837.imageshack.us/img837/926/eevx.png

كام ملاحظة بس للناس :
1-لازم تكون الـ Logs عندك شغالة.. بمعنى ان في ناس ممكن بتكون شغالة ببرنامج Evangelion أو srZor و بيقفلوا الـ option بتاع الـ Logs..لازم تفتحوها..
لو انتا مش بتستعمل بالبرنامج دا خلاص يبقى شغالة عندك.
2-الموضوع دا هيتقل الـ Log database بتاعتك و هيبقى فيها داتا كتير..من وقت للتاني امسح الـ table اللي بيتخزنوا عليه(اللي هوا IP_LOGS_ ) لأن كل ما شخصية تخش الجيم بيتضافلها سطر في الداتا.
3-اللي عاوز ينقل الموضوع برة على منتدى تاني ينقوله بس يدي الحقوق لأصحابها عشان الناس تعرف مين اللي عمله :) .
4-لو انتا شغال بـ Proxy زي مثلا HyperFilter .. الموضوع دا مش هينفع معاك لأن كل الشخصيات هتبقى متسجلة بـ IP واحد اللي هوا بتاع الحماية (البروكسي).

نبدأ الشغل :

أول حاجة هتعمل الـ Table دا :

كود PHP:

USE [SRO_VT_LOG]
GO

/****** Object:  Table [dbo].[_IP_LOGS]    Script Date: 02/12/2014 02:33:00 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

SET ANSI_PADDING ON
GO

CREATE TABLE 
[dbo].[_IP_LOGS](
    [
ID] [bigintIDENTITY(1,1NOT NULL,
    [
CharName] [varchar](50NOT NULL,
    [
IP] [varchar](50NOT NULL,
    [
LogTime] [smalldatetimeNOT NULL
ON [PRIMARY]

GO

SET ANSI_PADDING OFF
GO 

--لاحظ انك هتغير اسم الداتابيز SRO_VT_LOG باللي عندك



تاني حاجة و أهم حاجة .. تعديل على Procedure اسمها AddLogChar_

هنعمل زي اللي في الصورة :

http://i.imgur.com/8BrxP3F.png

بعد ما تفتح الـ Procedure تنزل لتحت خالص في اخرها و تعمل سطر جديد و تضيف الكود دا فيها :

كود PHP:

IF @EventID 4        /*This eventID is triggered whenever a character logs in*/
    
BEGIN
    
DECLARE @Cname varchar(50) = (SELECT Charname16 from SRO_VT_SHARD.dbo._Char WHERE CharID=@CharID)
    DECLARE @
IP bigint = @Data2
    
DECLARE @ip1 int;
    DECLARE @
ip2 int;        /* Made by Midget1337 - www.silkroad4arab.com */
    
DECLARE @ip3 int;                    /*All rights reserved */
    
DECLARE @ip4 int;
    DECLARE @
LeftOver bigint;
    DECLARE @
finalip varchar(50);
        
SET @ip1 = @IP 16777216  /*First IP segment*/
        
SET @LeftOver = @IP - (@ip1 16777216
        
SET @ip2 = @LeftOver 65536 /*Second IP segment*/
        
SET @LeftOver = @LeftOver - (@ip2 65536)
        
SET @ip3 = @LeftOver 256 /*Third IP segment*/
        
SET @ip4 = @LeftOver - (@ip3 256/*Fourth IP segment*/
        
        
SET @finalip =  /*Putting the segments together and reversing them*/
        
CONVERT(varchar, @ip4)+
        
'.'+CONVERT(varchar, @ip3)+
        
'.'+CONVERT(varchar, @ip2)+
        
'.'+CONVERT(varchar, @ip1)

    
INSERT INTO _IP_LOGS (CharName,IP,LogTimevalues (@Cname,@finalip,GETDATE())
    
    
END 

--لاحظ انك هتغير اسم الداتابيز SRO_VT_SHARD باللي عندك


بس لحد هنا خلصنا الشغل..اللي عاوز يعرف الايبي بتاع واحد فاتح مثلا يعمل الكويري دا :

كود PHP:

SELECT TOP 1 FROM _IP_LOGS
WHERE CharName 
'Character name'
ORDER BY LogTime DESC 


مش مطلوب منكم غير حاجة واحدة.. تدعولي بالنجاح و خصوصا السنة دي :D

Renewable 12-02-2014 04:43 AM

تسلم ايدك معلم من يومك

.a7la-smile. 12-02-2014 04:47 AM

الله ينور عليك

Yui 12-02-2014 05:03 AM

Keep going pro

MịηaTσ 12-02-2014 05:06 AM

عارفها بس تسلم

:smoke1:

HeMa 12-02-2014 05:23 AM

الله ينور

Medo4Sro 12-02-2014 05:44 AM

اشطه عليك :harp:

Thє Aиɪмατɪσи 12-02-2014 10:39 AM

تسلم يا باشا

.-Carica-. 12-02-2014 03:10 PM

ربنا معاك يامحمد

Hoka 12-02-2014 03:12 PM

تسلم يا ريس

Dallin 12-02-2014 04:15 PM

برنس يا محمد

che_9299 12-02-2014 05:51 PM

الله ينور
يا محمد

Midget1337 12-02-2014 06:14 PM

شكرا عالردود يا رجالة بس يا ريت حد يجرب الكلام دا و يقول النتيجة ايه.

BomBom 12-02-2014 06:37 PM

شغال 100%

تسلم

MyRȝturn 13-02-2014 04:13 PM

الله ينور
تسلم


الساعة الآن 07:10 AM.

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