Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

BrendonPawn

Acesso único

Recommended Posts

Vou explicar como funciona o meu sistema para facilitar o entendimento.

 

Eu estou elaborando um servidor de jogo (SAMP - San Andreas Multiplayer / GTA San Andreas Online),

e estou fazendo o salvamento de dados em MySQL. Para tornar o servidor mais interativo, estou desenvolvendo um

painel de controle online em PHP para que o jogador possa executar alguma ação e a mesma acontecer no jogo.

 

Eu criei um sistema de KEY semelhante ao de compra de jogos na steam onde voce recebe uma KEY e adiciona ao aplicativo para receber a recompensa (jogo).

 

Meu arquivo php gera uma KEY unica com caracteres aleatorios e salva no banco de dados com uma estrutura semelhante a essa:

CREATE TABLE IF NOT EXISTS `Codes` (
  `Code` text NOT NULL,
  `Status` text NOT NULL,
  `Player` text NOT NULL,
  `Action` text NOT NULL,
  `Value` int(11) NOT NULL
) 
INSERT INTO `Codes` (`Code`, `Status`, `Player`, `Action`, `Value`) VALUES ('FD5RDS', 'Available', '', 'Money', '10000')
Onde se o jogador usar o código "FD5RD5" dentro do jogo, ele recebe "10000" em "Money" ou dinheiro, alterando o status do codigo para "Unavailable" para que não possa ser usado novamente, e acrescenta seu nome na field Player para mostrar quem usou a key.
Agora vem a dúvida.
Se eu abrir a pagina "minhapagina.php" que contem o gerador da key, e der refresh 5 vezes na página, eu vou gerar 5 codigos e vou poder reclamar 5 recompensas. Eu peço ajuda para alguem me ajudar a bolar um método de esse código ser gerado apenas 1 única vez pelo usuário.
Caso não conseguistes entender o objetivo da pergunta, avisa que eu tento simplificar.
Grato desde já, Brendon.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi,tudo bem ?

Cara,sa-mp foi o meu jogo de infância,joguei por 8 anos no servidor do BPF.

Boa sorte com o seu servidor !

 

Bom,você pode criar uma tabela para armazenar os usuários que não usaram.

Na hora que o player clicar em Gerar,você faz uma consulta na tabela e vê se a conta dele já gerou,uma query parecida com essa:

 

 

SELECT id FROM players_gerados WHERE nick = $nick

Se retornar algo,é porque o player já gerou um código usando aquele nick,se não retornar é so executar o resto do código para gerar.

 

Me mande o IP do servidor se já estiver online !

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigo, creio que não seja essa a solução, pois eu teria de criar várias tabelas para cada promoção/evento e no caso da loja online que é baseada em key, o usuário não conseguiria comprar mais de um item. Mas agradeço a participação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.