SA-MP Forums Archive
Ayuda! - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: Ayuda! (/showthread.php?tid=533178)



Ayuda! - JeffreyG - 23.08.2014

Pongo bien mi contraseсa y me tira server closed the conecction.

pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    new string[256];
    new pName[24], Query[256]; GetPlayerName(playerid, pName, 24);
    switch(dialogid)
    {
        case LOGIN:
        {
            if(!response)
            {
                Kick(playerid);
            }
            if(strcmp(PlayerInfo[playerid][pPassword], inputtext, true, 128) == 0)
            {
                format(Query, sizeof(Query), "SELECT * FROM `usuarios` WHERE `Nombre` = '%s'", pName);
                mysql_function_query(Conecction, Query, true, "OnQueryFinish", "ii", 1, playerid);
                SetSpawnInfo(playerid,0,0,PlayerInfo[playerid][pPosx], PlayerInfo[playerid][pPosy], PlayerInfo[playerid][pPosz],0,0,0,0,0,0,0);
                SetPlayerHealth(playerid, PlayerInfo[playerid][pVida]);
                SetPlayerArmour(playerid, PlayerInfo[playerid][pChaleco]);
                SetPlayerScore(playerid, PlayerInfo[playerid][pScore]);
                SpawnPlayer(playerid);
            }
            else
            {
                SendClientMessage(playerid, -1, "CONTRASEСA INCORRECTA");
                Kick(playerid);
            }
        }



Respuesta: Ayuda! - !R1Ch@rD! - 23.08.2014

porque tienes el!!

pawn Код:
Kick(playerid);
seria por eso?? ya que al poner la contra te estaria kickeando?? XD


Re: Ayuda! - aoEXE - 23.08.2014

Coloca '!" Antes de strcmp aver...

pawn Код:
if(!strcmp(PlayerInfo[playerid][pPassword], inputtext, true, 128) == 0)



Respuesta: Ayuda! - [J]ulian - 23.08.2014

! & == 0 son lo mismo.

Quizбs tenes las contraseсas en la base de datos crifada. Por lo que para que se valide el "inputtext" lo deberнas crifar tambiйn.

PD: Creo que te pueden hacer inyecciуn SQL con ese cуdigo que has puesto.


Re: Ayuda! - theLegion - 23.08.2014

No es nada de lo anterior.

No te da el tiempo de mostrar el mensaje. Usa lo siguiente:

pawn Код:
// Cuando quieras llamarla
SetTimerEx("TimeKick",1000,false,"i",playerid); // 1000 = 1 segundo. Ajustalo como quieras

// Debajo del codigo
forward TimeKick(playerid);
public TimeKick(playerid)
{
    Kick(playerid);
    return 1;
}
EDIT: Usa la funcion despues de mostrarle el mensaje de contrasena incorrecta.

Presiento que estas usando el tutorial de JustBored, que cuando yo probe a ver como quedaba me ocurrio el mismo problema.


Re: Ayuda! - aoEXE - 23.08.2014

Quote:
Originally Posted by theLegion
Посмотреть сообщение
No es nada de lo anterior.

No te da el tiempo de mostrar el mensaje. Usa lo siguiente:

pawn Код:
// Cuando quieras llamarla
SetTimerEx("TimeKick",1000,false,"i",playerid); // 1000 = 1 segundo. Ajustalo como quieras

// Debajo del codigo
forward TimeKick(playerid);
public TimeKick(playerid)
{
    Kick(playerid);
    return 1;
}
EDIT: Usa la funcion despues de mostrarle el mensaje de contrasena incorrecta.

Presiento que estas usando el tutorial de JustBored, que cuando yo probe a ver como quedaba me ocurrio el mismo problema.
EL DICE QUE PONE BIEN LA CONTRASEСA Y LO KICKEA, NADA QUE VER LO QUEE DICES...?


Respuesta: Ayuda! - adri1 - 23.08.2014

Asegъrate de que se guarda y se carga antes de mostrar el diбlogo, usa un print a ver que sale, tambiйn puede ser lo que te dijo Julian.


Respuesta: Ayuda! - DesingMyCry - 23.08.2014

pawn Код:
PlayerInfo[playerid][pPassword]
Esa variable no guarda la contraseсa correctamente.


Respuesta: Ayuda! - JeffreyG - 24.08.2014

Quote:
Originally Posted by [J]ulian
Посмотреть сообщение
! & == 0 son lo mismo.

Quizбs tenes las contraseсas en la base de datos cifrada. Por lo que para que se valide el "inputtext" lo deberнas cifrar tambiйn.

PD: Creo que te pueden hacer inyecciуn SQL con ese cуdigo que has puesto.
No entiendo bien, їcуmo que cifrada?

їY quй es una inyecciуn SQL? no tengo idea de mysql, reciйn estoy aprendiendo.


Respuesta: Ayuda! - JeffreyG - 24.08.2014

Ayudenme plz.