SA-MP Forums Archive
[Ajuda] SQLite nгo registrando - 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: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] SQLite nгo registrando (/showthread.php?tid=663938)



SQLite nгo registrando - MtPlayerZ - 15.02.2019

Й o seguinte galera, tenho essa stock pra registrar um player novo.
Mas por algum motivo nгo esta funcionando.
Obs: As variбveis de nome, senha e sexo sгo setadas no dialog de registro, e la esta tudo certo.
PHP код:
stock RegistrarDB(playerid)
{
    new 
Query[90];
    
format(Querysizeof(Query), "INSERT INTO `contas`(`nome`,`senha`,`sexo`) VALUES ('%s','%s','%s')",
    
PlayerInfo[playerid][pNome], PlayerInfo[playerid][pSenha], PlayerInfo[playerid][pSexo]);
    
db_query(ConnectQuery);
    
    new 
DBResult:Resultado;
    
format(Querysizeof(Query), "SELECT `ID` FROM `contas` WHERE `nome`='%s'",PlayerInfo[playerid][pNome]);
    
Resultado db_query(ConnectQuery);
    if(
db_num_rows(Resultado))
    {
        
PlayerInfo[playerid][pID] = db_get_field_assoc_int(Resultado"ID");
    }
    
db_free_result(Resultado);
        return 
1;

Alguem esta vendo algo de errado?


Re: SQLite nгo registrando - ipsLuan - 15.02.2019

Use como base: https://sampforum.blast.hk/showthread.php?tid=646479.
- Como vocк estб chamando a callback?


Re: SQLite nгo registrando - MtPlayerZ - 15.02.2019

Quote:
Originally Posted by ipsLuan
Посмотреть сообщение
Eu usei este como exemplo '-', й sу ler o nome da stock, tanto que tive que corrigir akele monte de strcat desnecessбrio pq nгo estava salvando. Registrou um player e agora nгo registra mais nenhum.

Код:
RegistrarDB(playerid);



Re: SQLite nгo registrando - ipsLuan - 15.02.2019

Estou pelo celular e por isso nгo posso te dar uma ajuda mais tйcnica.

- Porйm, faзa o seguinte: Faзa debug (print/f) antes e depois do INSERT e tambйm antes e depois SELECT para saber atй quando a funзгo estб sendo executada.

@editado
Verifiquei aqui, isso tambйm pode ser a quantidade da query.
Aumente a quantidade cйlulas para ver se funciona.


Re: SQLite nгo registrando - DanielMatrix - 15.02.2019

Soluзгo


Olб tudo bem , dei uma olhada rбpido no seu cуdigo e jб visualizei um problema: new Query[90]; aumente o tamanho da Query , calcule os caracteres que vocк ira utilizar para o salvamento , pode ser mais otimizado, nгo interfere muito, mas fica otimizado.

Faзo sistemas por encomenda, claro um preзo justo dentro de suas exigкncias.

Original Roleplay



Re: SQLite nгo registrando - MtPlayerZ - 15.02.2019

Quote:
Originally Posted by DanielMatrix
Посмотреть сообщение
Soluзгo


Olб tudo bem , dei uma olhada rбpido no seu cуdigo e jб visualizei um problema: new Query[90]; aumente o tamanho da Query , calcule os caracteres que vocк ira utilizar para o salvamento , pode ser mais otimizado, nгo interfere muito, mas fica otimizado.

Faзo sistemas por encomenda, claro um preзo justo dentro de suas exigкncias.

Original Roleplay
Como faзo esse calculo?


Re: SQLite nгo registrando - ipsLuan - 15.02.2019

Quote:
Originally Posted by MtPlayerZ
Посмотреть сообщение
Como faзo esse calculo?
Tirando %s e somando pela quantidade mбxima de caracteres que a string tem.

new nome[24];
Por exemplo: %s й lindo (nome).

й lindo = 7 caracteres
%s = 24

24 + 7 = 31
new msg[31 + 1];
format(msg, sizeof(msg), "%s й lindo", nome);

Й algo mais ou menos assim.
Eu sempre coloco +1, apenas por costume mesmo.