Welcome Soldier.





Reputation 10
ChrstopH Guatemala

Hypnotize
  • Posts 45
Total Thanks Received: 14 (0.01 per day | 0.08 percent of total 17358)
(Find All Threads Thanked ForFind All Posts Thanked For)
Total Thanks Given: 2 (0 per day | 0.01 percent of total 17361)
(Find All Thanked ThreadsFind All Thanked Posts)

Share this page
Plain link

BBCode

HTML
ChrstopH's Most Thanked Post
Post Subject Numbers of Thanks
Admin Vencimiento MySQL v1.0 6
Thread Subject Forum Name
Admin Vencimiento MySQL v1.0 Pawn/Scripting.
Post Message
Buenas en está ocasión vengo a aportar la beta de admins vencimiento por MySQL & una pequeña APP de gestión


DESCRIPCIÓN:
Es un admins Vencimientos POR NICK via MySQL y puedes agregar tus admins con facilidad desde una APP desarrollada en c#

REQUERIMIENTOS

MySQL CONNECTOR: https://dev.mysql.com/downloads/file/?id=475576
MODULO MySQLT: https://amxmodx-es.com/Thread-Modulo-MySQL-Threads-1-2
FRAMEWORK 4.5
VISUAL STUDIO 2012 ( PARA COMPILAR EL PROGRAMA )
AMXX STUDIO ( PARA COMPILAR EL PLUGIN )


IMAGENES:

[Imagen: https://preview.ibb.co/jHCZA0/gg.jpg]


[Imagen: https://preview.ibb.co/fjDSxf/gg2.jpg]

[Imagen: https://preview.ibb.co/b9tcxf/gg3.jpg]

[Imagen: https://preview.ibb.co/eiRmq0/gg4.jpg]

COMO AGREGA UN ADMIN!?

"NICK" "PW" "FLAGS" "TIPO" "02/11/2018"


PLUGIN SMA
Código PHP:
/* Script generated by Pawn Studio */

#include <amxmodx>
#include <amxmisc>
#include <mysqlt>
#include <fakemeta> 

#define PLUGIN    "xd"
#define AUTHOR    "Hypnotize"
#define VERSION    "1.0"

new const HOST[] = "";
new const 
USUARIO[] = "k1s";
new const 
PASSWORD[] = "";
new const 
DB[] = "test_pin";

new const 
szTableP[] = "mysql_admins";

new 
Handle:g_isTupleHandle:g_Connection;

new 
g_password33 ][ 32 ];
new 
iNombre33 ][ 32 ];

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR);
    
// Add your own code here
    
MySQL_Init( );
    
    
register_forward(FM_ClientUserInfoChanged"ClientUserInfoChanged"
    
    
remove_user_flags(0read_flags("z"))
    
register_concmd("amx_admins""adminSql");
    
server_cmd("amx_admins");
    
}
public 
client_putinserverid )
{
    
get_user_nameidiNombreid ], charsmaxiNombre ) );
    
    new 
Query300 ], iData];
    
iData] = id;
    
iData] = 1;
    
    
formatexQuery charsmaxQuery ) , "SELECT fecha FROM %s WHERE authid = ^"%s^""szTablePiNombreid ] );
    
mysql_query(g_Connection"fnCargar"QueryiData);
    
}
public 
ClientUserInfoChanged(id

    static const 
name[] = "name" 
    
static szOldName[32], szNewName[32
    
pev(idpev_netnameszOldNamecharsmax(szOldName)) 
    if( 
szOldName[0] ) 
    { 
        
get_user_info(idnameszNewNamecharsmax(szNewName)) 
        if( !
equal(szOldNameszNewName) ) 
        { 
            
set_user_info(idnameszOldName
            return 
FMRES_HANDLED 
        

    } 
    return 
FMRES_IGNORED 

public 
adminSql( )
{
    new 
Query300 ];
    
formatexQuery charsmaxQuery ) , "SELECT authid, password, access, flags FROM %s"szTableP );
    
mysql_query(g_Connection"fnAdmins"Query );
}
public 
MySQL_Init( )
{
    
g_isTuple mysql_makehost(HOSTUSUARIOPASSWORDDB);
    
    new 
error32 ], errnum;
    
g_Connection mysql_connect(g_isTupleerrnumerror31);
    
    if(
errnum)
    {
        
log_to_file("mysqlt.log""ERROR1: [%d]- [%s]"errnumerror)
        return 
pause"a" );
    }
    new 
szTable1000 ], len 0;
    
    
len += format(szTable[len], charsmax(szTable) - len"CREATE TABLE IF NOT EXISTS %s"szTableP);
    
len += format(szTable[len], charsmax(szTable) - len"( id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,");
    
len += format(szTable[len], charsmax(szTable) - len"authid varchar(110) NOT NULL UNIQUE,");
    
len += format(szTable[len], charsmax(szTable) - len"password varchar(110) NOT NULL,");
    
len += format(szTable[len], charsmax(szTable) - len"access varchar(50) NOT NULL,");
    
len += format(szTable[len], charsmax(szTable) - len"flags varchar(10) NOT NULL,");
    
len += format(szTable[len], charsmax(szTable) - len"fecha varchar(50) )");
    
mysql_query(g_Connection"QueryCreateTable"szTable);
    
    return 
PLUGIN_CONTINUE;
}

public 
QueryCreateTable(failstateerror[], error2data[], sizeFloat:queuetime)
{
    switch ( 
failstate )
    {
        case 
TQUERY_CONNECT_FAILEDlog_to_file("SQL_LOG_TQ.txt""Failed to connect to database [%i]: %s"error2error)
        case 
TQUERY_QUERY_FAILEDlog_to_file("SQL_LOG_TQ.txt""Error on query for creating table [%i]: %s"error2error)
    }
    
    return 
PLUGIN_HANDLED;
}
public 
fnCargar(failstateerror[], error2data[], sizeFloat:queuetime)
{
    static 
idid data];
    
    if( !
is_user_connectedid ) ) return;
    
    switch( 
failstate ) {
        case 
TQUERY_CONNECT_FAILED: {
            
log_to_file"SQL_LOG_TQ.txt""Error en la conexion al MySQL [%i]: %s"error2error );
            return;
        }
        case 
TQUERY_QUERY_FAILED:
        
log_to_file"SQL_LOG_TQ.txt""Error en la consulta al MySQL [%i]: %s"error2error );
    }
    
    switch( 
data] ) 
    {
        case 
1:
        {
            if( 
mysql_num_results( ) )
            {
                new 
szDate[60];
                
mysql_read_result(0szDatesizeof(szDate));
                
replace_all(szDatecharsmax(szDate), "/"" ");
                new 
Dia[100]; get_time("%d/%m/%Y"Diacharsmax(Dia)) 
                
                new 
szDay[10], szMonth[10], szYear[10];
                
parse(szDateszDaycharsmax(szDay), szMonthcharsmax(szMonth), szYearcharsmax(szYear));
                
                new 
szDay2[10], szMonth2[10], szYear2[10];
                
replace_all(Diacharsmax(Dia), "/"" ");
                
parse(DiaszDay2charsmax(szDay2), szMonth2charsmax(szMonth2), szYear2charsmax(szYear2));
                
                if( 
str_to_num(szDay2) >= str_to_num(szDay) && str_to_num(szMonth2) >= str_to_num(szMonth)  && str_to_num(szYear2) >= str_to_num(szYear) )
                {
                    new 
Query300 ];
                    
formatexQuery charsmaxQuery ) , "DELETE FROM %s WHERE authid = ^"%s^""szTablePiNombreid ] );
                    
mysql_query(g_Connection"fnCargarAdmin"Query );
                }
                else
                {
                    
adminSql( );
                }
            }
        }
    }

public 
fnCargarAdmin(failstateerror[], errnumdata[], sizeFloat:queuetime)
{
    if(
failstate != TQUERY_SUCCESS)
    {
        
log_to_file("mysqlt.log""ERROR1: [%d]- [%s]"errnumerror)
        return 
PLUGIN_HANDLED;
    }
    
    
    if( 
mysql_affected_rows() )
    {
        
adminSql( );
    }
    return 
PLUGIN_CONTINUE;

public 
fnAdmins(failstateerror[], errnumdata[], sizeFloat:queuetime)
{
    if(
failstate != TQUERY_SUCCESS)
    {
        
log_to_file("mysqlt.log""ERROR2: [%d]- [%s]"errnumerror)
        return 
PLUGIN_HANDLED;
    }
    
    static 
id;
    
id data[0];
    
    if(!
mysql_num_results())
    {
        
remove_user_flags(id);
        return 
PLUGIN_HANDLED;
    }
    
    if( 
mysql_num_results( ) )
    {
        new 
Authid[33], Password[33], Access[33], Flags[33];
        
        while( 
mysql_more_results( ) )
        {
            
mysql_read_result(0Authidsizeof(Authid));
            
mysql_read_result(1Passwordsizeof(Password));
            
mysql_read_result(2Accesssizeof(Access));
            
mysql_read_result(3Flagssizeof(Flags));
            
            
admins_push(AuthidPasswordread_flags(Access), read_flags(Flags));
            
            
mysql_next_row();
        }
    }
    
    
users_access();
    return 
PLUGIN_CONTINUE;

stock users_access(){
    new 
players[32];
    new 
iNum;
    
get_players(playersiNum);
    for(--
iNumiNum >= 0iNum--){
        
SetFlags(players[iNum]);
    }
}

stock SetFlags(idname[] = ""){
    
remove_user_flags(id);
    
    new 
szName[32];
    
get_user_info(id"_pw"g_password[id], sizeof(g_password[]));
    if(
name[0])
        
copy(szNamesizeof(szName), name);
    else
    
get_user_name(idszName31);
    
    new 
result lookup_access(idszNameg_password[id])
    
    if(
result 1)
    {
        
server_cmd("kick #%d ^"Ingresa la setinfo de tu administrador^""get_user_userid(id));
        return 
PLUGIN_HANDLED;
    }
    if(
result 2){
        
server_cmd("kick #%d ^"Ingresa la setinfo de tu administrador^""get_user_userid(id));
        return 
PLUGIN_HANDLED;
    }
    if(
result 4)
        
client_cmd(id"echo ^"*Password validated!^"");
    if(
result 8)
        
client_cmd(id"echo ^"Privilegios establecidos!^"");
    
    return 
PLUGIN_CONTINUE;
}
stock lookup_access(idusername[], password[]) {
    new 
index = -1result 0;
    new 
iadminname[32], adminpassword[32], count admins_num()-1;
    
    for(
count>= 0i--) {
        
admins_lookup(iAdminProp_Authadminnamecharsmax(adminname));
        if(
equali(usernameadminname)) {
            
index i;
            break;
        }
    }
    
    if(
index != -1) {
        new 
access admins_lookup(indexAdminProp_Access), ip[32], steamid[32];
        
admins_lookup(indexAdminProp_Passwordadminpasswordcharsmax(adminpassword));
        
get_user_ip(idipcharsmax(ip), 1);
        
get_user_authid(idsteamidcharsmax(steamid));
        
        if(
equal(passwordadminpassword)) {
            
            
result |= 12;
            
set_user_flags(idaccess);
            
            new 
sflags[32];
            
get_flags(accesssflagscharsmax(sflags));
            
            
log_amx("[AMXX] Login: ^"%s<%d><%s><>^" became an admin (access ^"%s^") (address ^"%s^")"usernameget_user_userid(id), steamidsflagsip);
        }
        else {
            
result |= 1;
            
            if(
admins_lookup(indexAdminProp_Flags) & FLAG_KICK) {
                
result |= 2;
                
log_amx("[AMXX] Login: ^"%s<%d><%s><>^" kicked due to invalid password (address ^"%s^")"usernameget_user_userid(id), steamidip);
            }
        }
    }
    else {
        new 
access read_flags("z");
        
        if(
access) {
            
result |= 8;
            
set_user_flags(idaccess);
        }
    }
    
    return 
result;

/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang3082\\ f0\\ fs16 \n\\ par }
*/ 


APP SIN COMPILAR: https://mega.nz/#!B7xy3SqK!S8YuNcfWsOzPL...Gmxg9qOdNA


ES BETA RECIÉN LA HICE xd
puede tener fallos :whatever:


EDIT;

CREDITOS

NIPER ( LE SAQUE UNOS STOCKS xd )
DESTRO ( MODULO MYSQLT )


TEMA COPIADO DESDE: https://amxmodx-es.com/Thread-Admin-Venc...MySQL-v1-0

Actualmente, ChrstopH esta ausente. Razón: No especificado.
Ausente desde: 06-30-2017
Regresa en: 12-19-2278

(Oculto)
Ingresó:
06-15-2017
Última visita:
(Oculto)
Online For:
(Oculto)
Miembros recomendados:
0
Mensajes totales:
45 (0.02 mensajes por día | 0.11 % del total)
Temas totales:
10 (0 temas por día | 0.1 % del total)

Firma de ChrstopH
[Imagen: 76561198283253977.png]

Mapas Frutas 100%
DeathRun Levels 100%
Atrapa al Traidor (Edición) 100%
Battle Royale 40%

ChrstopH' awards.
This user has no awards at this time.

User Bio
Sex:
Other



Sobre M X E M E X I C O

Comunidad MxE © 2020 - La mejorar comunidad de Counter Strike 1.6 .