Mensajes: 503
Temas: 125
Registro en: Sep 2015
Reputación:
0
02/10/2016, 03:48 PM
(Última modificación: 02/10/2016, 03:50 PM por Darkay.)
como puedo cargar algo?, ejemplo
tengo esto:
Código PHP: public guardar_datos( id ) { new szQuery[ 128 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = GUARDAR_DATOS; formatex( szQuery, charsmax( szQuery ), "UPDATE %s SET Nivel='%d' WHERE id='%d'", szTable, g_Nivel[ id ], g_id[id] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); formatex( szQuery, charsmax( szQuery ), "UPDATE %s SET Experiencia='%d' WHERE id='%d'", szTable, g_Experiencia[ id ], g_id[id] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); }
segun esto setea el valor en la tabla de la base de datos y como haría para cargarlo cuando se loguea cada jugador???
code :
Código PHP: #include < amxmodx > #include < sqlx >
#define PLUGIN "Sistema de cuentas MySQL/SQLite" #define VERSION "1.1.2" #define AUTHOR "r0ma"
#define MYSQL
#if defined MYSQL
#define MYSQL_HOST "localhost" #define MYSQL_USER "root" #define MYSQL_PASS "" #define MYSQL_DATEBASE "servercs"
#else
#define SQLITE_DATEBASE "cuentas"
#endif
new const szTable[ ] = "cuentas"; new const szPrefix[ ] = "[Cuentas]";
new Handle:g_hTuple; new g_maxplayers;
new g_estado; new g_id[ 33 ]; new g_Nivel[33]; new g_usuario[ 33 ][ 34 ]; new g_password[ 33 ][ 34 ]; new g_playername[ 33 ][ 33 ];
enum { REGISTRAR_CUENTA, LOGUEAR_CUENTA, CARGAR_DATOS, GUARDAR_DATOS };
/* consulta MYSQL: CREATE TABLE cuentas ( id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , Usuario varchar(34) NOT NULL UNIQUE KEY, Password varchar(34) NOT NULL, Pj varchar(32) NOT NULL UNIQUE KEY, ) */
/* consulta SQLite: CREATE TABLE "cuentas" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "Usuario" VARCHAR NOT NULL UNIQUE, "Password" VARCHAR NOT NULL, "Pj" VARCHAR NOT NULL UNIQUE, "Experiencia" INTEGER DEFAULT 0 ) */
public plugin_init( ) { register_plugin( PLUGIN, VERSION, AUTHOR );
register_clcmd( "say /nivel", "cmdnivel"); register_clcmd( "say /howard", "cmdhoward"); register_clcmd( "CREAR_USUARIO", "reg_usuario" ); register_clcmd( "CREAR_PASSWORD", "reg_password" ); register_clcmd( "LOGUEAR_USUARIO", "log_usuario" ); register_clcmd( "LOGUEAR_PASSWORD", "log_password" ); register_clcmd( "chooseteam", "clcmd_changeteam" ); register_clcmd( "jointeam", "clcmd_changeteam" ); register_message( get_user_msgid( "ShowMenu" ), "message_ShowMenu" ); register_message( get_user_msgid( "VGUIMenu" ), "message_VGUIMenu" ); register_event( "HLTV", "event_round_start", "a", "1=0", "2=0" ); g_maxplayers = get_maxplayers( ); MySQLx_Init( ); }
public cmdhoward(id) { client_print(id,print_chat,"Eres nivel %d", g_Nivel[ id ]); }
public cmdnivel(id) { g_Nivel[id] = 100 client_print(id,print_chat,"Has recibido 100 niveles"); }
public message_VGUIMenu( iMsgid, iDest, id ) { if( g_estado & (1<<id) || get_msg_arg_int( 1 ) != 2 ) return PLUGIN_CONTINUE; show_login_menu( id ); return PLUGIN_HANDLED; }
public message_ShowMenu( iMsgid, iDest, id ) { if( g_estado & (1<<id) ) return PLUGIN_CONTINUE; static sMenuCode[ 33 ]; get_msg_arg_string( 4, sMenuCode, charsmax( sMenuCode ) ); if( containi( sMenuCode, "Team_Select" ) != -1 ) { show_login_menu( id ); return PLUGIN_HANDLED; } return PLUGIN_CONTINUE; }
public clcmd_changeteam( id ) { if( ~g_estado & (1<<id) ) { show_login_menu( id ); return PLUGIN_HANDLED; } return PLUGIN_CONTINUE; }
public show_login_menu( id ) { new menu = menu_create( "\r[TNW] \wBienvenido a nuestro servidor!", "login_menu" ); menu_additem( menu, "\wCrear Cuenta" ); menu_additem( menu, "\wIngresar" ); menu_setprop( menu, MPROP_EXIT, MEXIT_NEVER ); menu_display( id, menu ); return PLUGIN_HANDLED; }
public login_menu( id, menu, item ) { switch( item ) { case 0: client_cmd( id, "messagemode CREAR_USUARIO" ); case 1: client_cmd( id, "messagemode LOGUEAR_USUARIO" ); } return PLUGIN_HANDLED; }
public reg_usuario( id ) { read_args( g_usuario[ id ], charsmax( g_usuario[ ] ) ); remove_quotes( g_usuario[ id ] ); trim( g_usuario[ id ] ); md5( g_usuario[ id ], g_usuario[ id ] ); client_cmd( id, "messagemode CREAR_PASSWORD" ); return PLUGIN_HANDLED; }
public reg_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] ); new szQuery[ 256 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = REGISTRAR_CUENTA; get_user_name( id, g_playername[ id ], charsmax( g_playername[ ] ) ); formatex( szQuery, charsmax( szQuery ), "INSERT INTO %s (Usuario, Password, Pj) VALUES (^"%s^", ^"%s^", ^"%s^")", szTable, g_usuario[ id ], g_password[ id ], g_playername[ id ] ); SQL_ThreadQuery(g_hTuple, "DataHandler", szQuery, iData, 2); return PLUGIN_HANDLED; }
public log_usuario( id ) { read_args( g_usuario[ id ], charsmax( g_usuario[ ] ) ); remove_quotes( g_usuario[ id ] ); trim( g_usuario[ id ] ); md5( g_usuario[ id ], g_usuario[ id ] ); client_cmd( id, "messagemode LOGUEAR_PASSWORD" ); return PLUGIN_HANDLED; }
public log_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] ); new szQuery[ 128 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = LOGUEAR_CUENTA; formatex( szQuery, charsmax( szQuery ), "SELECT * FROM %s WHERE Usuario=^"%s^" AND Password=^"%s^"", szTable, g_usuario[ id ], g_password[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); return PLUGIN_HANDLED; }
public guardar_datos( id ) { new szQuery[ 128 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = GUARDAR_DATOS; formatex( szQuery, charsmax( szQuery ), "UPDATE %s SET Nivel='%d' WHERE id='%d'", szTable, g_Nivel[ id ], g_id[id] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); }
public DataHandler( failstate, Handle:Query, error[ ], error2, data[ ], datasize, Float:time ) { static id; id = data[ 0 ]; if( !is_user_connected( id ) ) return;
switch( failstate ) { case TQUERY_CONNECT_FAILED: { log_to_file( "SQL_LOG_TQ.txt", "Error en la conexion al MySQL [%i]: %s", error2, error ); return; } case TQUERY_QUERY_FAILED: log_to_file( "SQL_LOG_TQ.txt", "Error en la consulta al MySQL [%i]: %s", error2, error ); } switch( data[ 1 ] ) { case REGISTRAR_CUENTA: { if( failstate < TQUERY_SUCCESS ) { if( containi( error, "Usuario" ) != -1 ) client_print( id, print_chat, "%s El usuario ya existe.", szPrefix );
else if( containi( error, "Pj" ) != -1 ) client_print( id, print_chat, "%s El nombre de personaje esta en uso.", szPrefix ); else client_print( id, print_chat, "%s Error al crear la cuenta. Intente nuevamente.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" ); show_login_menu( id ); } else { client_print( id, print_chat, "%s Tu cuenta ha sido creada correctamente.", szPrefix ); new szQuery[ 128 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = CARGAR_DATOS; formatex( szQuery, charsmax( szQuery ), "SELECT id FROM %s WHERE Usuario=^"%s^"", szTable, g_usuario[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); } } case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 ); SQL_ReadResult( Query, 3, g_playername[ id ], charsmax( g_playername[ ] ) ); // Cargamos datos func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" ); show_login_menu( id ); } } case CARGAR_DATOS: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 ); // Ponemos la exp en 0 para el nuevo usuario. func_login_success( id ); } else { client_print( id, print_chat, "%s Error al cargar los datos, intente nuevamente.", szPrefix ); show_login_menu( id ); } } case GUARDAR_DATOS: { if( failstate < TQUERY_SUCCESS ) console_print( id, "%s Error en el guardado de datos.", szPrefix ); else console_print( id, "%s Datos guardados.", szPrefix ); } } }
public func_login_success( id ) { engclient_cmd( id, "jointeam", "5" ); engclient_cmd( id, "joinclass", "5" ); g_estado |= (1<<id); set_user_info( id, "name", g_playername[ id ] ); }
public event_round_start( ) { for( new i = 1; i <= g_maxplayers; i++ ) { if( g_estado & (1<<i) && is_user_connected( i ) ) guardar_datos( i ); } }
public client_infochanged( id ) { if( ~g_estado & (1<<id) ) return PLUGIN_CONTINUE; static name[ 33 ]; get_user_info( id, "name", name, charsmax( name ) ); if( !equal( g_playername[ id ], name ) ) { set_user_info( id, "name", g_playername[ id ] ); return PLUGIN_HANDLED; } return PLUGIN_CONTINUE; }
public client_disconnect( id ) { if( g_estado & (1<<id) ) { guardar_datos( id ); g_estado &= ~(1<<id); } g_usuario[ id ][ 0 ] = '^0'; g_password[ id ][ 0 ] = '^0'; }
#if defined MYSQL public MySQLx_Init( ) { g_hTuple = SQL_MakeDbTuple( MYSQL_HOST, MYSQL_USER, MYSQL_PASS, MYSQL_DATEBASE ); if( !g_hTuple ) { log_to_file( "SQL_ERROR.txt", "No se pudo conectar con la base de datos." ); return pause( "a" ); } return PLUGIN_CONTINUE; } #else
// Gracias ILUSION por fixear la conexión public MySQLx_Init( ) { new get_type[ 12 ]; SQL_SetAffinity( "sqlite" ); SQL_GetAffinity( get_type, sizeof get_type );
if( !equali( get_type, "sqlite" ) ) { log_to_file( "SQLITE_ERROR.txt", "Error de conexion" ); return pause( "a" ); } g_hTuple = SQL_MakeDbTuple( "", "", "", SQLITE_DATEBASE ); return PLUGIN_CONTINUE } #endif
public plugin_end( ) SQL_FreeHandle( g_hTuple );
"en la vida no triunfa el mas capaz, tampoco el mas rápido, en la vida triunfa solo aquel, que cree poder hacerlo"
Mensajes: 6,664
Temas: 81
Registro en: Jan 2014
Reputación:
68
Código: SELECT dato FROM tabla WHERE condicion(siquieres)
► NO DOY AYUDA VIA MENSAJE PRIVADO ◄
* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Mensajes: 503
Temas: 125
Registro en: Sep 2015
Reputación:
0
hice esto
Código PHP: public log_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] ); new szQuery[ 128 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = LOGUEAR_CUENTA; formatex( szQuery, charsmax( szQuery ), "SELECT * FROM %s WHERE Usuario=^"%s^" AND Password=^"%s^"", szTable, g_usuario[ id ], g_password[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
///ESTA///// formatex( szQuery, charsmax( szQuery ), "SELECT Nivel FROM %s WHERE Usuario=^"%s^"", szTable, g_usuario[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); return PLUGIN_HANDLED; }
pero cuando lo pruebo sale un error de sintax
"en la vida no triunfa el mas capaz, tampoco el mas rápido, en la vida triunfa solo aquel, que cree poder hacerlo"
Mensajes: 4,247
Temas: 94
Registro en: Mar 2014
Reputación:
58
02/10/2016, 04:15 PM
(Última modificación: 02/10/2016, 04:16 PM por totopizza.)
Y cuál es el error de la syntax?
A ver:
->
ya que usas md5 y el md5 usa un total de 64 carácteres..
y en toda la consulta hay mas de 128 carácteres
Estudia siempre; el tiempo es oro, lo material se puede recuperar pero el tiempo no se puede recuperar.
(02/10/2016, 05:05 PM)meTaLiCroSS escribió: Siempre me gusta ayudar cuando alguien esta interesado realmente en ver que esta programando. (08/08/2019, 05:32 PM)meTaLiCroSS escribió: grax x el dato cr4ck
Mis aportes
PLUGINSMAPAS
Menú LANG
[SF] Sistema de Frags
Say System (Admin Prefix)
Mensajes: 503
Temas: 125
Registro en: Sep 2015
Reputación:
0
02/10/2016, 04:32 PM
(Última modificación: 02/10/2016, 04:33 PM por Darkay.)
mira tira este error en consola
Código PHP: L 10/02/2016 - 15:31:12: [MySQL] Invalid column: 3 L 10/02/2016 - 15:31:12: [AMXX] Displaying debug trace (plugin "surf_lvl.amxx") L 10/02/2016 - 15:31:12: [AMXX] Run time error 10: native error (native "SQL_ReadResult") L 10/02/2016 - 15:31:12: [AMXX] [0] surf_lvl.sma::DataHandler (line 287)
el code
Código PHP: #include < amxmodx > #include < sqlx >
#define PLUGIN "Sistema de cuentas MySQL/SQLite" #define VERSION "1.1.2" #define AUTHOR "r0ma"
#define MYSQL
#if defined MYSQL
#define MYSQL_HOST "localhost" #define MYSQL_USER "root" #define MYSQL_PASS "" #define MYSQL_DATEBASE "servercs"
#else
#define SQLITE_DATEBASE "cuentas"
#endif
new const szTable[ ] = "cuentas"; new const szPrefix[ ] = "[Cuentas]";
new Handle:g_hTuple; new g_maxplayers;
new g_estado; new g_id[ 33 ]; new g_Nivel[33]; new g_usuario[ 33 ][ 34 ]; new g_password[ 33 ][ 34 ]; new g_playername[ 33 ][ 33 ];
enum { REGISTRAR_CUENTA, LOGUEAR_CUENTA, CARGAR_DATOS, GUARDAR_DATOS };
/* consulta MYSQL: CREATE TABLE cuentas ( id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , Usuario varchar(34) NOT NULL UNIQUE KEY, Password varchar(34) NOT NULL, Pj varchar(32) NOT NULL UNIQUE KEY, ) */
/* consulta SQLite: CREATE TABLE "cuentas" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "Usuario" VARCHAR NOT NULL UNIQUE, "Password" VARCHAR NOT NULL, "Pj" VARCHAR NOT NULL UNIQUE, "Experiencia" INTEGER DEFAULT 0 ) */
public plugin_init( ) { register_plugin( PLUGIN, VERSION, AUTHOR );
register_clcmd( "say /nivel", "cmdnivel"); register_clcmd( "say /howard", "cmdhoward"); register_clcmd( "CREAR_USUARIO", "reg_usuario" ); register_clcmd( "CREAR_PASSWORD", "reg_password" ); register_clcmd( "LOGUEAR_USUARIO", "log_usuario" ); register_clcmd( "LOGUEAR_PASSWORD", "log_password" ); register_clcmd( "chooseteam", "clcmd_changeteam" ); register_clcmd( "jointeam", "clcmd_changeteam" ); register_message( get_user_msgid( "ShowMenu" ), "message_ShowMenu" ); register_message( get_user_msgid( "VGUIMenu" ), "message_VGUIMenu" ); register_event( "HLTV", "event_round_start", "a", "1=0", "2=0" ); g_maxplayers = get_maxplayers( ); MySQLx_Init( ); }
public cmdhoward(id) { client_print(id,print_chat,"Eres nivel %d", g_Nivel[ id ]); }
public cmdnivel(id) { g_Nivel[id] = 100 client_print(id,print_chat,"Has recibido 100 niveles"); }
public message_VGUIMenu( iMsgid, iDest, id ) { if( g_estado & (1<<id) || get_msg_arg_int( 1 ) != 2 ) return PLUGIN_CONTINUE; show_login_menu( id ); return PLUGIN_HANDLED; }
public message_ShowMenu( iMsgid, iDest, id ) { if( g_estado & (1<<id) ) return PLUGIN_CONTINUE; static sMenuCode[ 33 ]; get_msg_arg_string( 4, sMenuCode, charsmax( sMenuCode ) ); if( containi( sMenuCode, "Team_Select" ) != -1 ) { show_login_menu( id ); return PLUGIN_HANDLED; } return PLUGIN_CONTINUE; }
public clcmd_changeteam( id ) { if( ~g_estado & (1<<id) ) { show_login_menu( id ); return PLUGIN_HANDLED; } return PLUGIN_CONTINUE; }
public show_login_menu( id ) { new menu = menu_create( "\r[TNW] \wBienvenido a nuestro servidor!", "login_menu" ); menu_additem( menu, "\wCrear Cuenta" ); menu_additem( menu, "\wIngresar" ); menu_setprop( menu, MPROP_EXIT, MEXIT_NEVER ); menu_display( id, menu ); return PLUGIN_HANDLED; }
public login_menu( id, menu, item ) { switch( item ) { case 0: client_cmd( id, "messagemode CREAR_USUARIO" ); case 1: client_cmd( id, "messagemode LOGUEAR_USUARIO" ); } return PLUGIN_HANDLED; }
public reg_usuario( id ) { read_args( g_usuario[ id ], charsmax( g_usuario[ ] ) ); remove_quotes( g_usuario[ id ] ); trim( g_usuario[ id ] ); md5( g_usuario[ id ], g_usuario[ id ] ); client_cmd( id, "messagemode CREAR_PASSWORD" ); return PLUGIN_HANDLED; }
public reg_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] ); new szQuery[ 256 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = REGISTRAR_CUENTA; get_user_name( id, g_playername[ id ], charsmax( g_playername[ ] ) ); formatex( szQuery, charsmax( szQuery ), "INSERT INTO %s (Usuario, Password, Pj) VALUES (^"%s^", ^"%s^", ^"%s^")", szTable, g_usuario[ id ], g_password[ id ], g_playername[ id ] ); SQL_ThreadQuery(g_hTuple, "DataHandler", szQuery, iData, 2); return PLUGIN_HANDLED; }
public log_usuario( id ) { read_args( g_usuario[ id ], charsmax( g_usuario[ ] ) ); remove_quotes( g_usuario[ id ] ); trim( g_usuario[ id ] ); md5( g_usuario[ id ], g_usuario[ id ] ); client_cmd( id, "messagemode LOGUEAR_PASSWORD" ); return PLUGIN_HANDLED; }
public log_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] ); new szQuery[ 256 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = LOGUEAR_CUENTA; formatex( szQuery, charsmax( szQuery ), "SELECT * FROM %s WHERE Usuario=^"%s^" AND Password=^"%s^"", szTable, g_usuario[ id ], g_password[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); formatex( szQuery, charsmax( szQuery ), "SELECT Nivel FROM %s WHERE Usuario=^"%s^"", szTable, g_usuario[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); return PLUGIN_HANDLED; }
public guardar_datos( id ) { new szQuery[ 128 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = GUARDAR_DATOS; formatex( szQuery, charsmax( szQuery ), "UPDATE %s SET Nivel='%d' WHERE id='%d'", szTable, g_Nivel[ id ], g_id[id] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); }
public DataHandler( failstate, Handle:Query, error[ ], error2, data[ ], datasize, Float:time ) { static id; id = data[ 0 ]; if( !is_user_connected( id ) ) return;
switch( failstate ) { case TQUERY_CONNECT_FAILED: { log_to_file( "SQL_LOG_TQ.txt", "Error en la conexion al MySQL [%i]: %s", error2, error ); return; } case TQUERY_QUERY_FAILED: log_to_file( "SQL_LOG_TQ.txt", "Error en la consulta al MySQL [%i]: %s", error2, error ); } switch( data[ 1 ] ) { case REGISTRAR_CUENTA: { if( failstate < TQUERY_SUCCESS ) { if( containi( error, "Usuario" ) != -1 ) client_print( id, print_chat, "%s El usuario ya existe.", szPrefix );
else if( containi( error, "Pj" ) != -1 ) client_print( id, print_chat, "%s El nombre de personaje esta en uso.", szPrefix ); else client_print( id, print_chat, "%s Error al crear la cuenta. Intente nuevamente.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" ); show_login_menu( id ); } else { client_print( id, print_chat, "%s Tu cuenta ha sido creada correctamente.", szPrefix ); new szQuery[ 128 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = CARGAR_DATOS; formatex( szQuery, charsmax( szQuery ), "SELECT id FROM %s WHERE Usuario=^"%s^"", szTable, g_usuario[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); } } case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 ); SQL_ReadResult( Query, 3, g_playername[ id ], charsmax( g_playername[ ] ) ); // Cargamos datos func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" ); show_login_menu( id ); } } case CARGAR_DATOS: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 ); // Ponemos la exp en 0 para el nuevo usuario. func_login_success( id ); } else { client_print( id, print_chat, "%s Error al cargar los datos, intente nuevamente.", szPrefix ); show_login_menu( id ); } } case GUARDAR_DATOS: { if( failstate < TQUERY_SUCCESS ) console_print( id, "%s Error en el guardado de datos.", szPrefix ); else console_print( id, "%s Datos guardados.", szPrefix ); } } }
public func_login_success( id ) { engclient_cmd( id, "jointeam", "5" ); engclient_cmd( id, "joinclass", "5" ); g_estado |= (1<<id); set_user_info( id, "name", g_playername[ id ] ); }
public event_round_start( ) { for( new i = 1; i <= g_maxplayers; i++ ) { if( g_estado & (1<<i) && is_user_connected( i ) ) guardar_datos( i ); } }
public client_infochanged( id ) { if( ~g_estado & (1<<id) ) return PLUGIN_CONTINUE; static name[ 33 ]; get_user_info( id, "name", name, charsmax( name ) ); if( !equal( g_playername[ id ], name ) ) { set_user_info( id, "name", g_playername[ id ] ); return PLUGIN_HANDLED; } return PLUGIN_CONTINUE; }
public client_disconnect( id ) { if( g_estado & (1<<id) ) { guardar_datos( id ); g_estado &= ~(1<<id); } g_usuario[ id ][ 0 ] = '^0'; g_password[ id ][ 0 ] = '^0'; }
#if defined MYSQL public MySQLx_Init( ) { g_hTuple = SQL_MakeDbTuple( MYSQL_HOST, MYSQL_USER, MYSQL_PASS, MYSQL_DATEBASE ); if( !g_hTuple ) { log_to_file( "SQL_ERROR.txt", "No se pudo conectar con la base de datos." ); return pause( "a" ); } return PLUGIN_CONTINUE; } #else
// Gracias ILUSION por fixear la conexión public MySQLx_Init( ) { new get_type[ 12 ]; SQL_SetAffinity( "sqlite" ); SQL_GetAffinity( get_type, sizeof get_type );
if( !equali( get_type, "sqlite" ) ) { log_to_file( "SQLITE_ERROR.txt", "Error de conexion" ); return pause( "a" ); } g_hTuple = SQL_MakeDbTuple( "", "", "", SQLITE_DATEBASE ); return PLUGIN_CONTINUE } #endif
public plugin_end( ) SQL_FreeHandle( g_hTuple );
"en la vida no triunfa el mas capaz, tampoco el mas rápido, en la vida triunfa solo aquel, que cree poder hacerlo"
Mensajes: 4,247
Temas: 94
Registro en: Mar 2014
Reputación:
58
Cómo creastes la tabla?
No me vayas a decir que la creastes así:
Código PHP: CREATE TABLE cuentas ( id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , Usuario varchar(34) NOT NULL UNIQUE KEY, Password varchar(34) NOT NULL, Pj varchar(32) NOT NULL UNIQUE KEY, )
Estudia siempre; el tiempo es oro, lo material se puede recuperar pero el tiempo no se puede recuperar.
(02/10/2016, 05:05 PM)meTaLiCroSS escribió: Siempre me gusta ayudar cuando alguien esta interesado realmente en ver que esta programando. (08/08/2019, 05:32 PM)meTaLiCroSS escribió: grax x el dato cr4ck
Mis aportes
PLUGINSMAPAS
Menú LANG
[SF] Sistema de Frags
Say System (Admin Prefix)
Mensajes: 3,466
Temas: 18
Registro en: Oct 2013
Reputación:
54
(02/10/2016, 04:32 PM)Darkay escribió: mira tira este error en consola
Código PHP: L 10/02/2016 - 15:31:12: [MySQL] Invalid column: 3 L 10/02/2016 - 15:31:12: [AMXX] Displaying debug trace (plugin "surf_lvl.amxx") L 10/02/2016 - 15:31:12: [AMXX] Run time error 10: native error (native "SQL_ReadResult") L 10/02/2016 - 15:31:12: [AMXX] [0] surf_lvl.sma::DataHandler (line 287)
el code
Código PHP: #include < amxmodx > #include < sqlx >
#define PLUGIN "Sistema de cuentas MySQL/SQLite" #define VERSION "1.1.2" #define AUTHOR "r0ma"
#define MYSQL
#if defined MYSQL
#define MYSQL_HOST "localhost" #define MYSQL_USER "root" #define MYSQL_PASS "" #define MYSQL_DATEBASE "servercs"
#else
#define SQLITE_DATEBASE "cuentas"
#endif
new const szTable[ ] = "cuentas"; new const szPrefix[ ] = "[Cuentas]";
new Handle:g_hTuple; new g_maxplayers;
new g_estado; new g_id[ 33 ]; new g_Nivel[33]; new g_usuario[ 33 ][ 34 ]; new g_password[ 33 ][ 34 ]; new g_playername[ 33 ][ 33 ];
enum { REGISTRAR_CUENTA, LOGUEAR_CUENTA, CARGAR_DATOS, GUARDAR_DATOS };
/* consulta MYSQL: CREATE TABLE cuentas ( id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY , Usuario varchar(34) NOT NULL UNIQUE KEY, Password varchar(34) NOT NULL, Pj varchar(32) NOT NULL UNIQUE KEY, ) */
/* consulta SQLite: CREATE TABLE "cuentas" ( "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "Usuario" VARCHAR NOT NULL UNIQUE, "Password" VARCHAR NOT NULL, "Pj" VARCHAR NOT NULL UNIQUE, "Experiencia" INTEGER DEFAULT 0 ) */
public plugin_init( ) { register_plugin( PLUGIN, VERSION, AUTHOR );
register_clcmd( "say /nivel", "cmdnivel"); register_clcmd( "say /howard", "cmdhoward"); register_clcmd( "CREAR_USUARIO", "reg_usuario" ); register_clcmd( "CREAR_PASSWORD", "reg_password" ); register_clcmd( "LOGUEAR_USUARIO", "log_usuario" ); register_clcmd( "LOGUEAR_PASSWORD", "log_password" ); register_clcmd( "chooseteam", "clcmd_changeteam" ); register_clcmd( "jointeam", "clcmd_changeteam" ); register_message( get_user_msgid( "ShowMenu" ), "message_ShowMenu" ); register_message( get_user_msgid( "VGUIMenu" ), "message_VGUIMenu" ); register_event( "HLTV", "event_round_start", "a", "1=0", "2=0" ); g_maxplayers = get_maxplayers( ); MySQLx_Init( ); }
public cmdhoward(id) { client_print(id,print_chat,"Eres nivel %d", g_Nivel[ id ]); }
public cmdnivel(id) { g_Nivel[id] = 100 client_print(id,print_chat,"Has recibido 100 niveles"); }
public message_VGUIMenu( iMsgid, iDest, id ) { if( g_estado & (1<<id) || get_msg_arg_int( 1 ) != 2 ) return PLUGIN_CONTINUE; show_login_menu( id ); return PLUGIN_HANDLED; }
public message_ShowMenu( iMsgid, iDest, id ) { if( g_estado & (1<<id) ) return PLUGIN_CONTINUE; static sMenuCode[ 33 ]; get_msg_arg_string( 4, sMenuCode, charsmax( sMenuCode ) ); if( containi( sMenuCode, "Team_Select" ) != -1 ) { show_login_menu( id ); return PLUGIN_HANDLED; } return PLUGIN_CONTINUE; }
public clcmd_changeteam( id ) { if( ~g_estado & (1<<id) ) { show_login_menu( id ); return PLUGIN_HANDLED; } return PLUGIN_CONTINUE; }
public show_login_menu( id ) { new menu = menu_create( "\r[TNW] \wBienvenido a nuestro servidor!", "login_menu" ); menu_additem( menu, "\wCrear Cuenta" ); menu_additem( menu, "\wIngresar" ); menu_setprop( menu, MPROP_EXIT, MEXIT_NEVER ); menu_display( id, menu ); return PLUGIN_HANDLED; }
public login_menu( id, menu, item ) { switch( item ) { case 0: client_cmd( id, "messagemode CREAR_USUARIO" ); case 1: client_cmd( id, "messagemode LOGUEAR_USUARIO" ); } return PLUGIN_HANDLED; }
public reg_usuario( id ) { read_args( g_usuario[ id ], charsmax( g_usuario[ ] ) ); remove_quotes( g_usuario[ id ] ); trim( g_usuario[ id ] ); md5( g_usuario[ id ], g_usuario[ id ] ); client_cmd( id, "messagemode CREAR_PASSWORD" ); return PLUGIN_HANDLED; }
public reg_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] ); new szQuery[ 256 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = REGISTRAR_CUENTA; get_user_name( id, g_playername[ id ], charsmax( g_playername[ ] ) ); formatex( szQuery, charsmax( szQuery ), "INSERT INTO %s (Usuario, Password, Pj) VALUES (^"%s^", ^"%s^", ^"%s^")", szTable, g_usuario[ id ], g_password[ id ], g_playername[ id ] ); SQL_ThreadQuery(g_hTuple, "DataHandler", szQuery, iData, 2); return PLUGIN_HANDLED; }
public log_usuario( id ) { read_args( g_usuario[ id ], charsmax( g_usuario[ ] ) ); remove_quotes( g_usuario[ id ] ); trim( g_usuario[ id ] ); md5( g_usuario[ id ], g_usuario[ id ] ); client_cmd( id, "messagemode LOGUEAR_PASSWORD" ); return PLUGIN_HANDLED; }
public log_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] ); new szQuery[ 256 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = LOGUEAR_CUENTA; formatex( szQuery, charsmax( szQuery ), "SELECT * FROM %s WHERE Usuario=^"%s^" AND Password=^"%s^"", szTable, g_usuario[ id ], g_password[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); formatex( szQuery, charsmax( szQuery ), "SELECT Nivel FROM %s WHERE Usuario=^"%s^"", szTable, g_usuario[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); return PLUGIN_HANDLED; }
public guardar_datos( id ) { new szQuery[ 128 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = GUARDAR_DATOS; formatex( szQuery, charsmax( szQuery ), "UPDATE %s SET Nivel='%d' WHERE id='%d'", szTable, g_Nivel[ id ], g_id[id] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); }
public DataHandler( failstate, Handle:Query, error[ ], error2, data[ ], datasize, Float:time ) { static id; id = data[ 0 ]; if( !is_user_connected( id ) ) return;
switch( failstate ) { case TQUERY_CONNECT_FAILED: { log_to_file( "SQL_LOG_TQ.txt", "Error en la conexion al MySQL [%i]: %s", error2, error ); return; } case TQUERY_QUERY_FAILED: log_to_file( "SQL_LOG_TQ.txt", "Error en la consulta al MySQL [%i]: %s", error2, error ); } switch( data[ 1 ] ) { case REGISTRAR_CUENTA: { if( failstate < TQUERY_SUCCESS ) { if( containi( error, "Usuario" ) != -1 ) client_print( id, print_chat, "%s El usuario ya existe.", szPrefix );
else if( containi( error, "Pj" ) != -1 ) client_print( id, print_chat, "%s El nombre de personaje esta en uso.", szPrefix ); else client_print( id, print_chat, "%s Error al crear la cuenta. Intente nuevamente.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" ); show_login_menu( id ); } else { client_print( id, print_chat, "%s Tu cuenta ha sido creada correctamente.", szPrefix ); new szQuery[ 128 ], iData[ 2 ]; iData[ 0 ] = id; iData[ 1 ] = CARGAR_DATOS; formatex( szQuery, charsmax( szQuery ), "SELECT id FROM %s WHERE Usuario=^"%s^"", szTable, g_usuario[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); } } case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 ); SQL_ReadResult( Query, 3, g_playername[ id ], charsmax( g_playername[ ] ) ); // Cargamos datos func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" ); show_login_menu( id ); } } case CARGAR_DATOS: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 ); // Ponemos la exp en 0 para el nuevo usuario. func_login_success( id ); } else { client_print( id, print_chat, "%s Error al cargar los datos, intente nuevamente.", szPrefix ); show_login_menu( id ); } } case GUARDAR_DATOS: { if( failstate < TQUERY_SUCCESS ) console_print( id, "%s Error en el guardado de datos.", szPrefix ); else console_print( id, "%s Datos guardados.", szPrefix ); } } }
public func_login_success( id ) { engclient_cmd( id, "jointeam", "5" ); engclient_cmd( id, "joinclass", "5" ); g_estado |= (1<<id); set_user_info( id, "name", g_playername[ id ] ); }
public event_round_start( ) { for( new i = 1; i <= g_maxplayers; i++ ) { if( g_estado & (1<<i) && is_user_connected( i ) ) guardar_datos( i ); } }
public client_infochanged( id ) { if( ~g_estado & (1<<id) ) return PLUGIN_CONTINUE; static name[ 33 ]; get_user_info( id, "name", name, charsmax( name ) ); if( !equal( g_playername[ id ], name ) ) { set_user_info( id, "name", g_playername[ id ] ); return PLUGIN_HANDLED; } return PLUGIN_CONTINUE; }
public client_disconnect( id ) { if( g_estado & (1<<id) ) { guardar_datos( id ); g_estado &= ~(1<<id); } g_usuario[ id ][ 0 ] = '^0'; g_password[ id ][ 0 ] = '^0'; }
#if defined MYSQL public MySQLx_Init( ) { g_hTuple = SQL_MakeDbTuple( MYSQL_HOST, MYSQL_USER, MYSQL_PASS, MYSQL_DATEBASE ); if( !g_hTuple ) { log_to_file( "SQL_ERROR.txt", "No se pudo conectar con la base de datos." ); return pause( "a" ); } return PLUGIN_CONTINUE; } #else
// Gracias ILUSION por fixear la conexión public MySQLx_Init( ) { new get_type[ 12 ]; SQL_SetAffinity( "sqlite" ); SQL_GetAffinity( get_type, sizeof get_type );
if( !equali( get_type, "sqlite" ) ) { log_to_file( "SQLITE_ERROR.txt", "Error de conexion" ); return pause( "a" ); } g_hTuple = SQL_MakeDbTuple( "", "", "", SQLITE_DATEBASE ); return PLUGIN_CONTINUE } #endif
public plugin_end( ) SQL_FreeHandle( g_hTuple );
Siempre me gusta ayudar cuando alguien esta interesado realmente en ver que esta programando, pero nisiquiera te estas dando cuenta de que haces.
Primero tabula un poco, me revente un ojo intentando verlo bien
Segundo, es redundante lo que haces con las consultas
Código PHP: public log_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] );
new szQuery[ 256 ], iData[ 2 ];
iData[ 0 ] = id; iData[ 1 ] = LOGUEAR_CUENTA;
formatex( szQuery, charsmax( szQuery ), "SELECT * FROM %s WHERE Usuario=^"%s^" AND Password=^"%s^"", szTable, g_usuario[ id ], g_password[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
formatex( szQuery, charsmax( szQuery ), "SELECT Nivel FROM %s WHERE Usuario=^"%s^"", szTable, g_usuario[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
return PLUGIN_HANDLED; }
La segunda consulta que haces ahi, no tiene sentido alguno, ya que en la anterior estas obteniendo todos los datos. Ya que veo no captaste, usando SELECT * estas obteniendo todas las columnas posibles (LA COLUMNA ES id, nombre, password PARA QUE CAPTES), para no tener que enumerarlas todas en la misma consulta. Si explicitamente estas obteniendo los datos de la misma tabla, ¿por que no la sacas de ahi mismo? Para evitar ambiguedades, mejor postea la estructura de tu base de datos ya que en la que esta escrita en el plugin no esta explicita la columna Nivel, supongo esta puesta tambien.
Y para profundizar mas aun, esta clarisimo el error, ya que en la segunda consulta, solo estas pidiendo el dato Nivel, pero fijate (repito, FIJATE) en iData ya que tiene de valores LOGUEAR_CUENTA que aparece en la funcion del handler
Código PHP: public DataHandler( failstate, Handle:Query, error[ ], error2, data[ ], datasize, Float:time ) { static id; id = data[ 0 ];
if( !is_user_connected( id ) ) return;
switch( failstate ) { case TQUERY_CONNECT_FAILED: { log_to_file( "SQL_LOG_TQ.txt", "Error en la conexion al MySQL [%i]: %s", error2, error ); return; } case TQUERY_QUERY_FAILED: log_to_file( "SQL_LOG_TQ.txt", "Error en la consulta al MySQL [%i]: %s", error2, error ); }
switch( data[ 1 ] ) { case REGISTRAR_CUENTA: { if( failstate < TQUERY_SUCCESS ) { if( containi( error, "Usuario" ) != -1 ) client_print( id, print_chat, "%s El usuario ya existe.", szPrefix );
else if( containi( error, "Pj" ) != -1 ) client_print( id, print_chat, "%s El nombre de personaje esta en uso.", szPrefix ); else client_print( id, print_chat, "%s Error al crear la cuenta. Intente nuevamente.", szPrefix );
client_cmd( id, "spk buttons/button10.wav" );
show_login_menu( id ); } else { client_print( id, print_chat, "%s Tu cuenta ha sido creada correctamente.", szPrefix );
new szQuery[ 128 ], iData[ 2 ];
iData[ 0 ] = id; iData[ 1 ] = CARGAR_DATOS;
formatex( szQuery, charsmax( szQuery ), "SELECT id FROM %s WHERE Usuario=^"%s^"", szTable, g_usuario[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 ); }
} case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 );
SQL_ReadResult( Query, 3, g_playername[ id ], charsmax( g_playername[ ] ) );
// Cargamos datos
func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" );
show_login_menu( id ); } } case CARGAR_DATOS: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 );
// Ponemos la exp en 0 para el nuevo usuario. func_login_success( id ); } else { client_print( id, print_chat, "%s Error al cargar los datos, intente nuevamente.", szPrefix ); show_login_menu( id ); } } case GUARDAR_DATOS: { if( failstate < TQUERY_SUCCESS ) console_print( id, "%s Error en el guardado de datos.", szPrefix );
else console_print( id, "%s Datos guardados.", szPrefix ); } } }
Te lo hare mas simple
Código PHP: case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 );
SQL_ReadResult( Query, 3, g_playername[ id ], charsmax( g_playername[ ] ) );
// Cargamos datos
func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" );
show_login_menu( id ); } }
Mas simple todavia
Código PHP: SQL_ReadResult( Query, 3, g_playername[ id ], charsmax( g_playername[ ] ) );
Mas aun
Cita:3
No hay ningun "RESULTADO NUMERO 3" ya que la consulta solo pidio 1 dato, y ese dato es Nivel. Es el resultado numero 0 para que lo entiendas de mejor forma. Y siendo aun asi, esto podría estar mucho mejor estructurado, llevando esto al caso de CARGAR_DATOS, o como sea que quieras hacerlo.
Mensajes: 503
Temas: 125
Registro en: Sep 2015
Reputación:
0
esta es la base de datos exactamente
el problema con la tabulacion es cuando copio y paso el codigo aca se destabula solo yo no le hago nada , no se mucho sobre mysql intento aprender pero me cuesta ya que esta en ingles y usa palabras muy complejas me confunden, pero ahi intento algo, estoy pidiendo ayuda por aca, por que quiero adelantar el proyecto para terminarlo pronto, les agradesco a los que me estan ayudando
"en la vida no triunfa el mas capaz, tampoco el mas rápido, en la vida triunfa solo aquel, que cree poder hacerlo"
Mensajes: 4,247
Temas: 94
Registro en: Mar 2014
Reputación:
58
Código PHP: public log_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] );
new szQuery[ 256 ], iData[ 2 ];
iData[ 0 ] = id; iData[ 1 ] = LOGUEAR_CUENTA;
formatex( szQuery, charsmax( szQuery ), "SELECT * FROM %s WHERE Usuario=^"%s^" AND Password=^"%s^"", szTable, g_usuario[ id ], g_password[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
formatex( szQuery, charsmax( szQuery ), "SELECT Nivel FROM %s WHERE Usuario=^"%s^"", szTable, g_usuario[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
return PLUGIN_HANDLED; }
->
Código PHP: public log_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] );
new szQuery[ 256 ], iData[ 2 ];
iData[ 0 ] = id; iData[ 1 ] = LOGUEAR_CUENTA;
formatex( szQuery, charsmax( szQuery ), "SELECT * FROM %s WHERE Usuario=^"%s^" AND Password=^"%s^"", szTable, g_usuario[ id ], g_password[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
return PLUGIN_HANDLED; }
Código PHP: case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 );
SQL_ReadResult( Query, 3, g_playername[ id ], charsmax( g_playername[ ] ) );
// Cargamos datos
func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" );
show_login_menu( id ); } }
->
Código PHP: case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 );
SQL_ReadResult( Query, 5, g_playername[ id ], charsmax( g_playername[ ] ) );
// Cargamos datos
func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" );
show_login_menu( id ); } }
Estudia siempre; el tiempo es oro, lo material se puede recuperar pero el tiempo no se puede recuperar.
(02/10/2016, 05:05 PM)meTaLiCroSS escribió: Siempre me gusta ayudar cuando alguien esta interesado realmente en ver que esta programando. (08/08/2019, 05:32 PM)meTaLiCroSS escribió: grax x el dato cr4ck
Mis aportes
PLUGINSMAPAS
Menú LANG
[SF] Sistema de Frags
Say System (Admin Prefix)
Mensajes: 3,466
Temas: 18
Registro en: Oct 2013
Reputación:
54
(02/10/2016, 07:32 PM)totopizza escribió: Código PHP: public log_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] );
new szQuery[ 256 ], iData[ 2 ];
iData[ 0 ] = id; iData[ 1 ] = LOGUEAR_CUENTA;
formatex( szQuery, charsmax( szQuery ), "SELECT * FROM %s WHERE Usuario=^"%s^" AND Password=^"%s^"", szTable, g_usuario[ id ], g_password[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
formatex( szQuery, charsmax( szQuery ), "SELECT Nivel FROM %s WHERE Usuario=^"%s^"", szTable, g_usuario[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
return PLUGIN_HANDLED; }
->
Código PHP: public log_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] );
new szQuery[ 256 ], iData[ 2 ];
iData[ 0 ] = id; iData[ 1 ] = LOGUEAR_CUENTA;
formatex( szQuery, charsmax( szQuery ), "SELECT * FROM %s WHERE Usuario=^"%s^" AND Password=^"%s^"", szTable, g_usuario[ id ], g_password[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
return PLUGIN_HANDLED; }
Código PHP: case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 );
SQL_ReadResult( Query, 3, g_playername[ id ], charsmax( g_playername[ ] ) );
// Cargamos datos
func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" );
show_login_menu( id ); } }
->
Código PHP: case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 );
SQL_ReadResult( Query, 5, g_playername[ id ], charsmax( g_playername[ ] ) );
// Cargamos datos
func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" );
show_login_menu( id ); } }
Por que cargas el Nivel en la variable del nombre? Esto estaba bien, solo hay que guardar el 5to resultado en una variable
Mensajes: 503
Temas: 125
Registro en: Sep 2015
Reputación:
0
02/10/2016, 08:37 PM
(Última modificación: 02/10/2016, 08:39 PM por Darkay.)
SQL_ReadResult( Query, 5, g_playername[ id ], charsmax( g_playername[ ] ) );
esto significa que esta cargando las 5 colunmas?
y en que parte esta cargando el nivel en la variable del nombre???
"en la vida no triunfa el mas capaz, tampoco el mas rápido, en la vida triunfa solo aquel, que cree poder hacerlo"
Mensajes: 4,247
Temas: 94
Registro en: Mar 2014
Reputación:
58
(02/10/2016, 08:24 PM)meTaLiCroSS escribió: (02/10/2016, 07:32 PM)totopizza escribió: Código PHP: public log_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] );
new szQuery[ 256 ], iData[ 2 ];
iData[ 0 ] = id; iData[ 1 ] = LOGUEAR_CUENTA;
formatex( szQuery, charsmax( szQuery ), "SELECT * FROM %s WHERE Usuario=^"%s^" AND Password=^"%s^"", szTable, g_usuario[ id ], g_password[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
formatex( szQuery, charsmax( szQuery ), "SELECT Nivel FROM %s WHERE Usuario=^"%s^"", szTable, g_usuario[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
return PLUGIN_HANDLED; }
->
Código PHP: public log_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] );
new szQuery[ 256 ], iData[ 2 ];
iData[ 0 ] = id; iData[ 1 ] = LOGUEAR_CUENTA;
formatex( szQuery, charsmax( szQuery ), "SELECT * FROM %s WHERE Usuario=^"%s^" AND Password=^"%s^"", szTable, g_usuario[ id ], g_password[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
return PLUGIN_HANDLED; }
Código PHP: case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 );
SQL_ReadResult( Query, 3, g_playername[ id ], charsmax( g_playername[ ] ) );
// Cargamos datos
func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" );
show_login_menu( id ); } }
->
Código PHP: case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 );
SQL_ReadResult( Query, 5, g_playername[ id ], charsmax( g_playername[ ] ) );
// Cargamos datos
func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" );
show_login_menu( id ); } }
Por que cargas el Nivel en la variable del nombre? Esto estaba bien, solo hay que guardar el 5to resultado en una variable
no me fije en eso
Código PHP: case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 );
SQL_ReadResult( Query, 3, g_playername[ id ], charsmax( g_playername[ ] ) ); exp[id] = SQL_ReadResult( Query, 4 ); nivel[id] = SQL_ReadResult(Query, 5); // Cargamos datos
func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" );
show_login_menu( id ); } }
Estudia siempre; el tiempo es oro, lo material se puede recuperar pero el tiempo no se puede recuperar.
(02/10/2016, 05:05 PM)meTaLiCroSS escribió: Siempre me gusta ayudar cuando alguien esta interesado realmente en ver que esta programando. (08/08/2019, 05:32 PM)meTaLiCroSS escribió: grax x el dato cr4ck
Mis aportes
PLUGINSMAPAS
Menú LANG
[SF] Sistema de Frags
Say System (Admin Prefix)
Mensajes: 3,466
Temas: 18
Registro en: Oct 2013
Reputación:
54
(02/10/2016, 08:58 PM)totopizza escribió: (02/10/2016, 08:24 PM)meTaLiCroSS escribió: (02/10/2016, 07:32 PM)totopizza escribió: Código PHP: public log_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] );
new szQuery[ 256 ], iData[ 2 ];
iData[ 0 ] = id; iData[ 1 ] = LOGUEAR_CUENTA;
formatex( szQuery, charsmax( szQuery ), "SELECT * FROM %s WHERE Usuario=^"%s^" AND Password=^"%s^"", szTable, g_usuario[ id ], g_password[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
formatex( szQuery, charsmax( szQuery ), "SELECT Nivel FROM %s WHERE Usuario=^"%s^"", szTable, g_usuario[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
return PLUGIN_HANDLED; }
->
Código PHP: public log_password( id ) { read_args( g_password[ id ], charsmax( g_password[ ] ) ); remove_quotes( g_password[ id ] ); trim( g_password[ id ] ); md5( g_password[ id ], g_password[ id ] );
new szQuery[ 256 ], iData[ 2 ];
iData[ 0 ] = id; iData[ 1 ] = LOGUEAR_CUENTA;
formatex( szQuery, charsmax( szQuery ), "SELECT * FROM %s WHERE Usuario=^"%s^" AND Password=^"%s^"", szTable, g_usuario[ id ], g_password[ id ] ); SQL_ThreadQuery( g_hTuple, "DataHandler", szQuery, iData, 2 );
return PLUGIN_HANDLED; }
Código PHP: case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 );
SQL_ReadResult( Query, 3, g_playername[ id ], charsmax( g_playername[ ] ) );
// Cargamos datos
func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" );
show_login_menu( id ); } }
->
Código PHP: case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 );
SQL_ReadResult( Query, 5, g_playername[ id ], charsmax( g_playername[ ] ) );
// Cargamos datos
func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" );
show_login_menu( id ); } }
Por que cargas el Nivel en la variable del nombre? Esto estaba bien, solo hay que guardar el 5to resultado en una variable
no me fije en eso
Código PHP: case LOGUEAR_CUENTA: { if( SQL_NumResults( Query ) ) { g_id[ id ] = SQL_ReadResult( Query, 0 );
SQL_ReadResult( Query, 3, g_playername[ id ], charsmax( g_playername[ ] ) ); exp[id] = SQL_ReadResult( Query, 4 ); nivel[id] = SQL_ReadResult(Query, 5); // Cargamos datos
func_login_success( id ); } else { client_print( id, print_chat, "%s Usuario o Pasword incorrecta.", szPrefix ); client_cmd( id, "spk buttons/button10.wav" );
show_login_menu( id ); } }
Ahi si
Mensajes: 503
Temas: 125
Registro en: Sep 2015
Reputación:
0
muchisimas gracias
"en la vida no triunfa el mas capaz, tampoco el mas rápido, en la vida triunfa solo aquel, que cree poder hacerlo"
Mensajes: 3,466
Temas: 18
Registro en: Oct 2013
Reputación:
54
(02/10/2016, 08:37 PM)Darkay escribió: SQL_ReadResult( Query, 5, g_playername[ id ], charsmax( g_playername[ ] ) );
esto significa que esta cargando las 5 colunmas?
Me gaste un parrafo el post anterior y ni lo leiste...
|