Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

IP logs + sql


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
Brak odpowiedzi do tego tematu

#1 Petrus1610

    Zaawansowany

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:102
  • GG:
  • Imię:piotr
  • Lokalizacja:Kraków
Offline

Napisano 04.08.2012 20:34

Witam. Chciałbym prosić o lekką modyfikację pluginu zamieszczonego w tym temacie:

http://amxx.pl/topic...nie-adresow-ip/


/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <dbi>
#define PLUGIN "IPLog"
#define VERSION "1.0"
#define AUTHOR "RaYden"

new g_sqlHost[66]
new g_sqlUser[36]
new g_sqlPass[46]
new g_sqlDb[26]
new g_sqlTable[64] = "Steam IDs and IPs"
new Sql:sql
new Result:result
new bool:g_boolsqlOK = false
public plugin_init() {
	    register_plugin(PLUGIN, VERSION, AUTHOR)
	    set_task(0.4,"SetSQL")
}
public SetSQL()
{
	    get_cvar_string("amx_sql_host",g_sqlHost,65)
	    get_cvar_string("amx_sql_user",g_sqlUser,35)
	    get_cvar_string("amx_sql_pass",g_sqlPass,45)
	    get_cvar_string("amx_sql_db",g_sqlDb,25)
	    new szError[36]
	    sql = dbi_connect(g_sqlHost,g_sqlUser,g_sqlPass,g_sqlDb,szError,35)
	    if (sql <= SQL_FAILED)
	    {
			    log_amx("[Command Log] Couldn't connect to Database^nUsing Host:%s , User %s , db %s",g_sqlHost,g_sqlUser,g_sqlPass,g_sqlDb)
			    g_boolsqlOK = false
			    dbi_close(sql)
			    return
	    }
	    dbi_query(sql,"CREATE TABLE IF NOT EXISTS `%s` ( `name` VARCHAR( 36 ), `auth` VARCHAR( 32 ) NOT NULL, `ip` VARCHAR( 32 ) NOT NULL, `date` VARCHAR( 32 ) NOT NULL, `time` VARCHAR( 32 ) NOT NULL,`serverip` VARCHAR( 36 ) NOT NULL,`map` VARCHAR( 36 ) NOT NULL ) COMMENT = 'Steam Id and IP Log Table' ",g_sqlTable)
	    g_boolsqlOK = true
	    return
}
public client_authorized(id)
{	  
	    if(is_user_bot(id)) return PLUGIN_CONTINUE;
	    new Name[33],AdminIP[32],SteamID[33], ServerIP[32]
	    get_user_name(id, Name, 32)
	    get_user_ip(id, AdminIP, 15)
	    get_user_authid(id , SteamID , 32)
	    get_cvar_string("ip", ServerIP, 31)
	    LogSQL(id,AdminIP,ServerIP)
	   
	    //log_to_file("IPLog.txt","  Name: %s | STEAMID: %s | IP: %s ^n",Name,SteamID,ip)
	    return PLUGIN_CONTINUE
}
public LogSQL(AdminID , AdminIP[32] , ServerIP[32])
{
	    if(!g_boolsqlOK)
			    return PLUGIN_CONTINUE
	    new szAdminName[36], szAdminAuth[32],szDate[26],szMap[36],szTime[16],szServerIP[32]
	    new szAdminIP[31]
	    get_user_name(AdminID,szAdminName,35)
	    remove_quotes(szAdminName)
	    while(replace(szAdminName,35,"'","")) { }
	    get_user_authid(AdminID,szAdminAuth,31)
	    //get_user_ip(AdminIP, szAdminIP, 30, 0)
	    get_time("%m-%d-%Y",szDate,25)
	    get_time("%H:%M:%S",szTime,15)
	    get_mapname(szMap,35)
	    //if(szArgs[0] == 0)
	    //	  format(szArgs,100,"[i]None[/i]")
	    new szError[126]
	    result = dbi_query(sql,"INSERT INTO `%s` (`name`,`auth`,`ip`,`date`,`time`,`serverip`,`map`) VALUES ('%s','%s','%s','%s','%s','%s','%s');",g_sqlTable,szAdminName,szAdminAuth,AdminIP,szDate,szTime,ServerIP,szMap)
	    if(result == RESULT_FAILED)
	    {
			    dbi_error(sql,szError,125)
			    server_print("[Command Log] Couldn't insert new row.^nError:^n^"%s^"^n",szError)
			    server_print("[Command Log] Stopping continuation of Command Logging.")
			    dbi_free_result(result)
			    dbi_close(sql)
			    g_boolsqlOK = false
	    }
	    dbi_free_result(result)
	    return PLUGIN_CONTINUE
}



1. Proszę o usunięcie warrningów podczas kompilacji
2. Usuwanie starszych wpisów niż 7 dni.
3. W miarę możliwości, jeżeli ktoś posiada coś podobnego poproszę o jakiś prosty skrypt wyświetlający te dane na www.


pozdrawiam i liczę na pomoc, dzięki
hej

Użytkownik Petrus1610 edytował ten post 04.08.2012 20:39

  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych