[Ajuda] array index out of bounds
#1

Estava criando um sistema que apenas fundadores do servidor podem usar sу que me deparei com este erro: array index out of bounds(variable "SenhaAdmin")

peзo a ajuda de vocкs...

Variavel
PHP код:
new SenhaAdmin[1][10] = {
    
"senha123"
}; 
OnDialogResponse
PHP код:
    if(dialogid == DIALOG_LOGAR_ADMIN)
    {
        if(
response)
        {
            if(
inputtext[playerid] == SenhaAdmin[1])
            {
                
SendClientMessage(playerid, -1"O SISTEMA TA FUNCIONANDOOOOOOOOOOO");
            }
            else
            {
                
SendClientMessage(playerid, -1"[ERRO] Senha de fundador incorreta!");
                
Kick(playerid);
            }
        }
        else
        {
            
SendClientMessage(playerid, -1"[INFO] Para logar como fundador somente digitar o comando de novo.");
        } 
Reply
#2

Vocк deve usar strcmp para fazer comparaзгo de strings.
Reply
#3

Quote:
Originally Posted by elTioFrame
Посмотреть сообщение
Estava criando um sistema que apenas fundadores do servidor podem usar sу que me deparei com este erro: array index out of bounds(variable "SenhaAdmin")

peзo a ajuda de vocкs...

Variavel
PHP код:
new SenhaAdmin[1][10] = {
    
"senha123"
}; 
OnDialogResponse
PHP код:
    if(dialogid == DIALOG_LOGAR_ADMIN)
    {
        if(
response)
        {
            if(
inputtext[playerid] == SenhaAdmin[1])
            {
                
SendClientMessage(playerid, -1"O SISTEMA TA FUNCIONANDOOOOOOOOOOO");
            }
            else
            {
                
SendClientMessage(playerid, -1"[ERRO] Senha de fundador incorreta!");
                
Kick(playerid);
            }
        }
        else
        {
            
SendClientMessage(playerid, -1"[INFO] Para logar como fundador somente digitar o comando de novo.");
        } 
voce esta tentando acessar a posiзгo 2 do vetor sendo que o vetor tem apenas 1 posiзгo que й a "0"(Todos vetores comeзam do 0 e vai ate n-1), entao deveria ser SenhaAdmin[0]

tente:

PHP код:
    if(dialogid == DIALOG_LOGAR_ADMIN
    { 
        if(
response
        { 
            if(!
strcmp(inputtextSenhaAdmin[0])) 
            { 
                
SendClientMessage(playerid, -1"O SISTEMA TA FUNCIONANDOOOOOOOOOOO"); 
            } 
            else 
            { 
                
SendClientMessage(playerid, -1"[ERRO] Senha de fundador incorreta!"); 
                
Kick(playerid); 
            } 
        } 
        else 
        { 
            
SendClientMessage(playerid, -1"[INFO] Para logar como fundador somente digitar o comando de novo."); 
        } 
Reply
#4

E hб outras coisas erradas...
Inputtext nгo precisa ter o [playerid].
Reply
#5

Quote:
Originally Posted by PedroH
Посмотреть сообщение
voce esta tentando acessar a posiзгo 2 do vetor sendo que o vetor tem apenas 1 posiзгo que й a "0"(Todos vetores comeзam do 0 e vai ate n-1), entao deveria ser SenhaAdmin[0]

tente:

PHP код:
    if(dialogid == DIALOG_LOGAR_ADMIN
    { 
        if(
response
        { 
            if(!
strcmp(inputtextSenhaAdmin[0])) 
            { 
                
SendClientMessage(playerid, -1"O SISTEMA TA FUNCIONANDOOOOOOOOOOO"); 
            } 
            else 
            { 
                
SendClientMessage(playerid, -1"[ERRO] Senha de fundador incorreta!"); 
                
Kick(playerid); 
            } 
        } 
        else 
        { 
            
SendClientMessage(playerid, -1"[INFO] Para logar como fundador somente digitar o comando de novo."); 
        } 
Eu tmb tinha pensado nisso mas resultou nisso: array must be indexed (variable "SenhaAdmin")


Agora vou estudar oq o nosso amigo ipsLuan falou...
Reply
#6

Usa ai

PHP код:
new SenhaAdmin[][30] = { 
    
"senha123" 
};      
if(
dialogid == DIALOG_LOGAR_ADMIN) { 
        if(
response) { 
            for(new 
isizeof(SenhaAdmin); i++) {
                if (
strcmp(SenhaAdmin[i], inputtexttrue) == 0) {
                    
SendClientMessage(playerid, -1"O sistema estб funcionando."); 
                    break;
                }
                if(
== sizeof(SenhaAdmin)-1){
                    
SendClientMessage(playerid, -1"[ERRO] Senha de fundador incorreta!"); 
                    
Kick(playerid); 
                }
            }
        } else { 
            
SendClientMessage(playerid, -1"[INFO] Para logar como fundador somente digitar o comando de novo."); 
        }

Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)