Skocz do zawartości

Nowy szablon forum

mygo.pl

Stworzyliśmy dla Was nowy wygląd forum. Z pewnością znajdziesz rzeczy, które wg Ciebie mogą zostać zmienione - wspomnij o tym w specjalnym wątku.

Czytaj więcej

Jak założyć własną sieć

serwerów CS

Zastanawiasz się nad prowadzeniem własnej sieci serwerów? Przeczytaj podstawowe informacje, na które należy zwrócić uwagę, przy takim projekcie.

Czytaj więcej

Tworzymy spis sieci

dodaj swoją

Dodaj sieć do której należysz, pozwoli to na promocję i budowę ogólnopolskiej bazy sieci CS.

Czytaj więcej

RSSsql_threadquery - cannot set user flags


MYGO.pl
 Udostępnij

Rekomendowane odpowiedzi

  • RSSy
Hello everyone.
I got a problem - I want to connect to sql and check if player has acccess flags. Here's my example code:
PHP Code:

#include <amxmodx>
#include <amxmisc>
#include <sqlx>

#define PLUGIN "sqlVIPloader"
#define VERSION "1.0"
#define AUTHOR "Sebxx"

new c_db_hostc_db_userc_db_passc_db_namec_serv_ip
new db_host[33], db_user[33], db_pass[33], db_name[33], serv_ip[23]
new 
Handle:g_SqlTuple

public plugin_init() 
{
    
register_plugin(PLUGINVERSIONAUTHOR)

    
c_db_host register_cvar("shop_sql_host""127.0.0.0")
    
c_db_user register_cvar("shop_sql_user""root")
    
c_db_pass register_cvar("shop_sql_pass""")
    
c_db_name register_cvar("shop_sql_db""shop")
    
c_serv_ip register_cvar("this_serv_ip""127.127.127.127:27015")

    new 
cfg_loc[33]
    
get_configsdircfg_loccharsmax(cfg_loc) )
    
server_cmd"exec %s/st_shop_sql.cfg"cfg_loc )
}

public 
client_authorizedid, const authid[] )
{
    if ( !
is_user_bot(id) && !is_user_hltv(id) )
    {
        
get_pcvar_stringc_db_hostdb_host32 )
        
get_pcvar_stringc_db_userdb_user32 )
        
get_pcvar_stringc_db_passdb_pass32 )
        
get_pcvar_stringc_db_namedb_name32 )
        
get_pcvar_stringc_serv_ipserv_ip22 )

        
g_SqlTuple SQL_MakeDbTupledb_hostdb_userdb_passdb_name )

        new 
query[512], user_ip[32], name[32], steamid[35], pw_info[32], pw_hash[34]

        
get_user_ipiduser_ipcharsmax(user_ip), )
        
get_user_nameidnamecharsmax(name) )
        
get_user_authididsteamidcharsmax(steamid) )
        
get_user_infoid"_pw"pw_info31 )
        
hash_stringpw_infoHash_Md5pw_hashcharsmax(pw_hash) )

        
formatex(query511"SELECT sc.access \
                                FROM shop_services AS sc, shop_servers AS sv \
                                WHERE sv.serv_ip = '%s' \
                                AND sc.server_id = sv.serv_id \
                                AND ( ( sc.auth_id = '%s' AND sc.auth = 1 ) OR ( sc.auth_id = '%s' AND sc.password = '%s' AND sc.auth = 2 ) OR ( sc.auth_id = '%s' AND sc.password = '%s' AND sc.auth = 3 ) ) \
                                AND sc.expire > %d"
serv_ipsteamidnamepw_hashuser_ippw_hashget_systime() )

        new 
Data[1]
        
Data[0] = id

        SQL_ThreadQuery
(g_SqlTuple"do_query"queryData1)
    }
}

public 
do_queryFailStateHandle:QueryError[], ErrcodeData[], DataSize )
{
    if ( 
FailState == TQUERY_CONNECT_FAILED )
    {
        
log_amx("Could not connect to SQL database.")

        if ( 
Errcode )
        {
            
log_amx("Error: %s"Error)
        }

        return 
PLUGIN_CONTINUE
    
}
    else if ( 
FailState == TQUERY_QUERY_FAILED )
    {
        
log_amx("Query failed.")

        if ( 
Errcode )
        {
            
log_amx("Error: %s"Error)
        }

        return 
PLUGIN_CONTINUE
    
}

    new 
id Data[0]

    if ( 
SQL_NumResults(Query) )
    {
        new 
flags[32]
        
        while( 
SQL_MoreResultsQuery ) )
        {
            new 
qcolAccess SQL_FieldNameToNumQuery"access" )
            
SQL_ReadResultQueryqcolAccessflags31 )
            
//log_amx( "Flag: %s", flags )
            
set_user_flagsidread_flagsflags ) )
            
SQL_NextRow(Query)
        }
    }

    
SQL_FreeHandle(g_SqlTuple)
    return 
PLUGIN_CONTINUE


The problem is, set_user_flags don't set it. SQL query works well (I see in the console flags get from sql server) but player don't have permissions. What's wrong?

Przeczytaj cały wpis

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...