Raised This Month: $32 Target: $400
 8% 

[Ayuda] Problema con plugin que guarda visitas


  
 
 
Thread Tools Display Modes
Author Message
lanproject
Member
Join Date: Mar 2012
Old 04-21-2013 , 18:23   [Ayuda] Problema con plugin que guarda visitas
#1

Hola buenas tardes, tengo un problema con este plugin que guarda cuanta cantidad de usuarios entran al servidor, lo que sucede es que cuando entro, doy unos pasos y el server se cae, voy al archivo que creo, y me guardo 1 visita, pero si entramos dos o mas no guarda.

PHP Code:
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <nvault>

#define PLUGIN "Estadisticas"
#define VERSION "1.0"
#define AUTHOR "Tiim"

new g_visitas[33]

public 
plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
// Add your code here...
}

public 
client_putinserver(id)
{
     
Save(id)
}

public 
Save(id)
{
    
g_visitas[id]++
    
    new 
g_nvault nvault_open("Estadisticas")
    new 
szValue[50], key[32]
    
    
formatex(szValuecharsmax(szValue), "visitas %d"g_visitas[id])
    
    
nvault_set(g_nvaultkeyszValue)
    
    
nvault_close(g_nvault)

me podrian ayudar?

saludos..
lanproject is offline
mcxr
Member
Join Date: Oct 2012
Location: Argen - tina
Old 04-21-2013 , 19:08   Re: [Ayuda] Problema con plugin que guarda visitas
#2

Yo uso este. Fijate si te anda.
PHP Code:
#include <amxmodx> 
#include <amxmisc>
#include <hamsandwich>


new g_iFile
new g_iVisitsNum
new g_szFile[64]

public 
plugin_init()
{
    
get_configsdirg_szFilecharsmax(g_szFile) )
    
add(g_szFilecharsmax(g_szFile), "/visits.ini")
    
    
// a+ permite leer y escribir en el archivo, si no existe se crea automaticamente.
    
if( (g_iFile fopen(g_szFile"a+")) )
    {
        new 
szBuffer[10]
        
fgetsg_iFileszBuffercharsmax(szBuffer) )
        
trim(szBuffer)
        
        
g_iVisitsNum is_str_num(szBuffer) ? str_to_num(szBuffer) : 0
        
        fclose
(g_iFile)
    }
    
    
register_concmd("amx_visits""cmdVisits"_"<Muestra el número de visitas>")
}

public 
cmdVisits(id)
{
    
print_chatColor"\g[AMXX]\t Numero de visitas en este servidor :\g %d"g_iVisitsNum)
    
//client_print(id, print_chat, "[Servidor] Numero de visitas: %d", g_iVisitsNum)
    
    
return PLUGIN_HANDLED
}

public 
client_putinserver(id)
{
    
set_task(3.0"TaskVisits"id)
    
g_iVisitsNum++
}

public 
TaskVisits(id)
{
    if( 
is_user_connected(id))
    {
        
print_chatColorid "\g[AMXX]\t Eres el visitante :\g %d"g_iVisitsNum)
    }
}

public 
plugin_end()
{
    if( 
g_iVisitsNum )
    {
        
// w+ sobreescribe el archivo
        
if( (g_iFile fopen(g_szFile"w+")) )
        {
            
// Usar la misma variable g_szFile porque ya no se usara otra vez.
            
num_to_strg_iVisitsNumg_szFilecharsmax(g_szFile) )    
            
fputs(g_iFileg_szFile)
            
            
fclose(g_iFile)
        }
    }
}  
stock print_chatColor(id,const input[], any:...)
{
    new 
msg[191], players[32], count 1;
    
vformat(msg,190,input,3);
    
replace_all(msg,190,"\g","^4");// green
    
replace_all(msg,190,"\n","^1");// normal
    
replace_all(msg,190,"\t","^3");// team
    
    
if (idplayers[0] = id; else get_players(players,count,"ch");
    for (new 
i=0;i<count;i++)
    if (
is_user_connected(players[i]))
    {
        
message_begin(MSG_ONE_UNRELIABLE,get_user_msgid("SayText"),_,players[i]);
        
write_byte(players[i]);
        
write_string(msg);
        
message_end();
    }

__________________
No hay que apagar la luz de otro, para lograr que brille la nuestra. Gandhi

Last edited by mcxr; 04-21-2013 at 19:08.
mcxr is offline
Send a message via MSN to mcxr Send a message via Skype™ to mcxr
lanproject
Member
Join Date: Mar 2012
Old 04-21-2013 , 21:05   Re: [Ayuda] Problema con plugin que guarda visitas
#3

Quote:
Originally Posted by mcxr View Post
Yo uso este. Fijate si te anda.
PHP Code:
#include <amxmodx> 
#include <amxmisc>
#include <hamsandwich>


new g_iFile
new g_iVisitsNum
new g_szFile[64]

public 
plugin_init()
{
    
get_configsdirg_szFilecharsmax(g_szFile) )
    
add(g_szFilecharsmax(g_szFile), "/visits.ini")
    
    
// a+ permite leer y escribir en el archivo, si no existe se crea automaticamente.
    
if( (g_iFile fopen(g_szFile"a+")) )
    {
        new 
szBuffer[10]
        
fgetsg_iFileszBuffercharsmax(szBuffer) )
        
trim(szBuffer)
        
        
g_iVisitsNum is_str_num(szBuffer) ? str_to_num(szBuffer) : 0
        
        fclose
(g_iFile)
    }
    
    
register_concmd("amx_visits""cmdVisits"_"<Muestra el número de visitas>")
}

public 
cmdVisits(id)
{
    
print_chatColor"\g[AMXX]\t Numero de visitas en este servidor :\g %d"g_iVisitsNum)
    
//client_print(id, print_chat, "[Servidor] Numero de visitas: %d", g_iVisitsNum)
    
    
return PLUGIN_HANDLED
}

public 
client_putinserver(id)
{
    
set_task(3.0"TaskVisits"id)
    
g_iVisitsNum++
}

public 
TaskVisits(id)
{
    if( 
is_user_connected(id))
    {
        
print_chatColorid "\g[AMXX]\t Eres el visitante :\g %d"g_iVisitsNum)
    }
}

public 
plugin_end()
{
    if( 
g_iVisitsNum )
    {
        
// w+ sobreescribe el archivo
        
if( (g_iFile fopen(g_szFile"w+")) )
        {
            
// Usar la misma variable g_szFile porque ya no se usara otra vez.
            
num_to_strg_iVisitsNumg_szFilecharsmax(g_szFile) )    
            
fputs(g_iFileg_szFile)
            
            
fclose(g_iFile)
        }
    }
}  
stock print_chatColor(id,const input[], any:...)
{
    new 
msg[191], players[32], count 1;
    
vformat(msg,190,input,3);
    
replace_all(msg,190,"\g","^4");// green
    
replace_all(msg,190,"\n","^1");// normal
    
replace_all(msg,190,"\t","^3");// team
    
    
if (idplayers[0] = id; else get_players(players,count,"ch");
    for (new 
i=0;i<count;i++)
    if (
is_user_connected(players[i]))
    {
        
message_begin(MSG_ONE_UNRELIABLE,get_user_msgid("SayText"),_,players[i]);
        
write_byte(players[i]);
        
write_string(msg);
        
message_end();
    }

gracias por responder, en parte me sirve y en parte no, ya que cuando se renicia el sv o se cae no guarda esas visitas.. yo necesito que las cuente por ip y que si la misma ip vuelve a entrar no la cuente..
lanproject is offline
wEEk
Senior Member
Join Date: Sep 2012
Old 04-21-2013 , 21:52   Re: [Ayuda] Problema con plugin que guarda visitas
#4

PHP Code:
#include <amxmodx>  
#include <amxmisc> 
#include <hamsandwich>  
#include <nvault> 


new g_iFile 
new g_iVisitsNum 
new g_szFile[64

public 
plugin_init() 

    
get_configsdirg_szFilecharsmax(g_szFile) ) 
    
add(g_szFilecharsmax(g_szFile), "/visits.ini"
     
    
// a+ permite leer y escribir en el archivo, si no existe se crea automaticamente. 
    
if( (g_iFile fopen(g_szFile"a+")) ) 
    { 
        new 
szBuffer[10
        
fgetsg_iFileszBuffercharsmax(szBuffer) ) 
        
trim(szBuffer
         
        
g_iVisitsNum is_str_num(szBuffer) ? str_to_num(szBuffer) : 
         
        fclose
(g_iFile
    } 
     
    
register_concmd("amx_visits""cmdVisits"_"<Muestra el número de visitas>"


public 
cmdVisits(id

    
print_chatColor"\g[AMXX]\t Numero de visitas en este servidor :\g %d"g_iVisitsNum
    
//client_print(id, print_chat, "[Servidor] Numero de visitas: %d", g_iVisitsNum) 
     
    
return PLUGIN_HANDLED 


public 
client_putinserver(id

    
set_task(3.0"TaskVisits"id
    
g_iVisitsNum++  
    
Save(id)


public 
TaskVisits(id

    if( 
is_user_connected(id)) 
    { 
        
print_chatColorid "\g[AMXX]\t Eres el visitante :\g %d"g_iVisitsNum
    } 


public 
plugin_end() 

    if( 
g_iVisitsNum 
    { 
        
// w+ sobreescribe el archivo 
        
if( (g_iFile fopen(g_szFile"w+")) ) 
        { 
            
// Usar la misma variable g_szFile porque ya no se usara otra vez. 
            
num_to_strg_iVisitsNumg_szFilecharsmax(g_szFile) )     
            
fputs(g_iFileg_szFile
             
            
fclose(g_iFile
        } 
    } 
}   
stock print_chatColor(id,const input[], any:...) 

    new 
msg[191], players[32], count 1
    
vformat(msg,190,input,3); 
    
replace_all(msg,190,"\g","^4");// green 
    
replace_all(msg,190,"\n","^1");// normal 
    
replace_all(msg,190,"\t","^3");// team 
     
    
if (idplayers[0] = id; else get_players(players,count,"ch"); 
    for (new 
i=0;i<count;i++) 
    if (
is_user_connected(players[i])) 
    { 
        
message_begin(MSG_ONE_UNRELIABLE,get_user_msgid("SayText"),_,players[i]); 
        
write_byte(players[i]); 
        
write_string(msg); 
        
message_end(); 
    } 


public 
Save(id

    
g_visitas[id]++ 
     
    new 
g_nvault nvault_open("Estadisticas"
    new 
szValue[50], key[32
     
    
formatex(szValuecharsmax(szValue), "visitas %d"g_visitas[id]) 
     
    
nvault_set(g_nvaultkeyszValue
     
    
nvault_close(g_nvault

no lo compile fijate si te sirve
wEEk is offline
lanproject
Member
Join Date: Mar 2012
Old 04-21-2013 , 23:19   Re: [Ayuda] Problema con plugin que guarda visitas
#5

Quote:
Originally Posted by wEEk View Post
PHP Code:
#include <amxmodx>  
#include <amxmisc> 
#include <hamsandwich>  
#include <nvault> 


new g_iFile 
new g_iVisitsNum 
new g_szFile[64

public 
plugin_init() 

    
get_configsdirg_szFilecharsmax(g_szFile) ) 
    
add(g_szFilecharsmax(g_szFile), "/visits.ini"
     
    
// a+ permite leer y escribir en el archivo, si no existe se crea automaticamente. 
    
if( (g_iFile fopen(g_szFile"a+")) ) 
    { 
        new 
szBuffer[10
        
fgetsg_iFileszBuffercharsmax(szBuffer) ) 
        
trim(szBuffer
         
        
g_iVisitsNum is_str_num(szBuffer) ? str_to_num(szBuffer) : 
         
        fclose
(g_iFile
    } 
     
    
register_concmd("amx_visits""cmdVisits"_"<Muestra el número de visitas>"


public 
cmdVisits(id

    
print_chatColor"\g[AMXX]\t Numero de visitas en este servidor :\g %d"g_iVisitsNum
    
//client_print(id, print_chat, "[Servidor] Numero de visitas: %d", g_iVisitsNum) 
     
    
return PLUGIN_HANDLED 


public 
client_putinserver(id

    
set_task(3.0"TaskVisits"id
    
g_iVisitsNum++  
    
Save(id)


public 
TaskVisits(id

    if( 
is_user_connected(id)) 
    { 
        
print_chatColorid "\g[AMXX]\t Eres el visitante :\g %d"g_iVisitsNum
    } 


public 
plugin_end() 

    if( 
g_iVisitsNum 
    { 
        
// w+ sobreescribe el archivo 
        
if( (g_iFile fopen(g_szFile"w+")) ) 
        { 
            
// Usar la misma variable g_szFile porque ya no se usara otra vez. 
            
num_to_strg_iVisitsNumg_szFilecharsmax(g_szFile) )     
            
fputs(g_iFileg_szFile
             
            
fclose(g_iFile
        } 
    } 
}   
stock print_chatColor(id,const input[], any:...) 

    new 
msg[191], players[32], count 1
    
vformat(msg,190,input,3); 
    
replace_all(msg,190,"\g","^4");// green 
    
replace_all(msg,190,"\n","^1");// normal 
    
replace_all(msg,190,"\t","^3");// team 
     
    
if (idplayers[0] = id; else get_players(players,count,"ch"); 
    for (new 
i=0;i<count;i++) 
    if (
is_user_connected(players[i])) 
    { 
        
message_begin(MSG_ONE_UNRELIABLE,get_user_msgid("SayText"),_,players[i]); 
        
write_byte(players[i]); 
        
write_string(msg); 
        
message_end(); 
    } 


public 
Save(id

    
g_visitas[id]++ 
     
    new 
g_nvault nvault_open("Estadisticas"
    new 
szValue[50], key[32
     
    
formatex(szValuecharsmax(szValue), "visitas %d"g_visitas[id]) 
     
    
nvault_set(g_nvaultkeyszValue
     
    
nvault_close(g_nvault

no lo compile fijate si te sirve
tira errores..
lanproject is offline
LuKks
Senior Member
Join Date: Dec 2012
Location: Argentina, Santa Fe
Old 04-21-2013 , 23:46   Re: [Ayuda] Problema con plugin que guarda visitas
#6

PHP Code:
/* Plugin generated by AMXX-Studio */ 

#include <amxmodx> 
#include <nvault> 

new visitasvaultdata[15], key[5], g_nvault 

public plugin_init() 

      
register_plugin("Contador de Visitas""1.0"";LuKks.-'"
      
g_nvault nvault_open("www.Stygia-Games.Com.Ar"


public 
client_putinserver(idSave(id

public 
Save(id)  
{  
    
key "jojo"
    
visitas++ 
    
format(vaultdata14"%i"visitas
    
nvault_set(g_nvaultkeyvaultdata)  
    return 
PLUGIN_CONTINUE  

no testee.

Last edited by LuKks; 04-21-2013 at 23:50.
LuKks is offline
MexPower
Veteran Member
Join Date: Nov 2012
Old 04-22-2013 , 00:18   Re: [Ayuda] Problema con plugin que guarda visitas
#7

podrias aser algo con el plugin de statsx lo pones en el rank que guarde en ip y si pones /rank digamos te saldra: tu rank is %d de %d(y este es el numero de visitas)!!! y ps puedes usar esa variable para lo que tu quieras
__________________
Allied Modders En Español
MexPower is offline
baneado
Veteran Member
Join Date: Dec 2012
Location: amxmodx-es.com
Old 04-22-2013 , 10:31   Re: [Ayuda] Problema con plugin que guarda visitas
#8

Quote:
Originally Posted by LuKks View Post
PHP Code:
/* Plugin generated by AMXX-Studio */ 

#include <amxmodx> 
#include <nvault> 

new visitasvaultdata[15], key[5], g_nvault 

public plugin_init() 

      
register_plugin("Contador de Visitas""1.0"";LuKks.-'"
      
g_nvault nvault_open("www.Stygia-Games.Com.Ar"


public 
client_putinserver(idSave(id

public 
Save(id)  
{  
    
key "jojo"
    
visitas++ 
    
format(vaultdata14"%i"visitas
    
nvault_set(g_nvaultkeyvaultdata)  
    return 
PLUGIN_CONTINUE  

no testee.
Por qué usas return PLUGIN_CONTINUE ?

Nunca cargas los datos

Last edited by baneado; 04-22-2013 at 10:32.
baneado is offline
Destro-
Veteran Member
Join Date: Jun 2010
Location: $me->location();
Old 04-22-2013 , 12:40   Re: [Ayuda] Problema con plugin que guarda visitas
#9

Quote:
Originally Posted by baneado View Post
Por qué usas return PLUGIN_CONTINUE ?

Nunca cargas los datos
Porque no sabe pawn (?


Code:
#include <amxmodx> #define PLUGIN "?" #define VERSION "00000001" #define AUTHOR "destri" new g_visitas public plugin_init() {     register_plugin(PLUGIN, VERSION, AUTHOR)         new str_data[10]     get_vaultdata("visitas", str_data, charsmax(str_data))         g_visitas = str_to_num(str_data) } public client_putinserver(id)  {     new temp[10]     temp[0] = ++g_visitas         set_task(3.0, "print_msg", id, temp, 1)         num_to_str(g_visitas, temp, charsmax(temp))     set_vaultdata("visitas", temp) } public client_disconnect(id) {     remove_task(id) } public print_msg(num[], id)  {     client_print(id, print_chat, "[Stygia-PLAGUER.Com.Ar] Eres el visitante: %d", num[0]) }
No lo compile ni probé,pero supongo que esta bien
__________________

Last edited by Destro-; 04-22-2013 at 12:43.
Destro- is offline
lanproject
Member
Join Date: Mar 2012
Old 04-22-2013 , 14:06   Re: [Ayuda] Problema con plugin que guarda visitas
#10

Quote:
Originally Posted by Destro- View Post
Porque no sabe pawn (?


Code:
#include <amxmodx> #define PLUGIN "?" #define VERSION "00000001" #define AUTHOR "destri" new g_visitas public plugin_init() {     register_plugin(PLUGIN, VERSION, AUTHOR)         new str_data[10]     get_vaultdata("visitas", str_data, charsmax(str_data))         g_visitas = str_to_num(str_data) } public client_putinserver(id)  {     new temp[10]     temp[0] = ++g_visitas         set_task(3.0, "print_msg", id, temp, 1)         num_to_str(g_visitas, temp, charsmax(temp))     set_vaultdata("visitas", temp) } public client_disconnect(id) {     remove_task(id) } public print_msg(num[], id)  {     client_print(id, print_chat, "[Stygia-PLAGUER.Com.Ar] Eres el visitante: %d", num[0]) }
No lo compile ni probé,pero supongo que esta bien
anda bien, lo unico que le falta es que no cuente todas las visitas, es decir, que cuente visitas unicas por ip, y no cada vez que te conectas al servidor cuenta la misma visita, despues guarda todo bien no pierde nada, gracias por eso =)

yo en realidad lo que quiero hacer es que guarde las visitas por ip unica para tener una "estadistica" de cuantas personas entran de distintas ips.

Last edited by lanproject; 04-22-2013 at 14:16.
lanproject is offline
 



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 17:54.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode