[Ajuda] Retornar valor - Versão de Impressão +- Portal SAMP (https://portalsamp.com) +-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5) +--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6) +--- Tópico: [Ajuda] Retornar valor (/showthread.php?tid=4775) |
Retornar valor - Biggy - 18/05/2024 Olá boa noite, gostaria de solicitar ajuda sobre algo que não estou conseguindo resolver. Eu quero puxar um dado da base de dados para a minha TextDraw, porém está retornando um valor mas nada haver com aquele que eu quero. Eu fiz o seguinte código. Podem me ajudar ou dar sugestões de como eu poderei resolver?? Obrigado desde já! Código: CMD:concesf(playerid,params[]) Código: forward CargarEmp(resultid, extraid, ConnectionHandle); RE: Retornar valor - xbruno1000x - 18/05/2024 Essa query está incorreta. Você quer pegar o dinheiro, mas está buscando todos os atributos, o que é desnecessário. Além disso está usando uma variável(money) sem valor atribuído como condição para encontrar o resultado. Nessa query está sendo buscado todas as empresas com dinheiro 0 e id 2. Na clausula Where o id 2 bastaria. Depois você está formatando a variável money sem nenhum valor atribuído a ela e exibindo na textdraw. Recomendo que dê uma olhada no script de exemplo do MySQL SA-MP, lá tem a resposta pro seu problema: https://github.com/pBlueG/SA-MP-MySQL/blob/master/example_scripts/login_system-cache.pwn#L312 Dê uma olhada na função AssignPlayerData e vai entender melhor como funciona a recuperação de dados persistidos. RE: Retornar valor - Biggy - 19/05/2024 (18/05/2024 22:37)xbruno1000x Escreveu: Essa query está incorreta. Você quer pegar o dinheiro, mas está buscando todos os atributos, o que é desnecessário. Além disso está usando uma variável(money) sem valor atribuído como condição para encontrar o resultado. Nessa query está sendo buscado todas as empresas com dinheiro 0 e id 2. Na clausula Where o id 2 bastaria. Depois você está formatando a variável money sem nenhum valor atribuído a ela e exibindo na textdraw. Obrigado pela resposta, estive rodando aqui várias horas e tentando várias soluções mas sem sucesso. Notei que modificando a seguinte linha Disso: Código: format(cofreemp, sizeof(cofreemp), "R$: %d", money); Para: Código: format(cofreemp, sizeof(cofreemp), "R$: %d", EmpresaInfo[emp][eDinheiro]); Vou exatamente buscar o valor que eu pretendia quando coloquei a public CargarEmp(resultid, extraid, ConnectionHandle) iniciando com o servidor tal como a função AssignPlayerData que mencionou em cima. O meu problema agora é que o valor retornado do mysql é sempre da linha ID 1, sendo que o meu objetivo é receber esse mesmo dado mas do ID que eu quisesse. Do mesmo jeito que consegui puxar o valor através da EmpresaInfo[emp][eDinheiro] tentei usar o if(EmpresaInfo[emp][eID] == 2) para tentar ir buscar outra linha mas como ele só verifica a linha 1, não retorna. RE: Retornar valor - Biggy - 19/05/2024 Resolvido! Com Switch para puxar o id 2. Obrigado bruno Código: switch(EmpresaInfo[i][eID]) RE: Retornar valor - xbruno1000x - 19/05/2024 Você pode fazer melhor ainda e usar diretamente assim: Código: format(cofreemp, sizeof(cofreemp), "R$: %d", EmpresaInfo[2][eDinheiro]); |