Jump to content
eduuh1524

Sistema de pontos,saldo ou créditos PHP

Recommended Posts

Olá.

Boa noite a todos,eu preciso de uma ajuda.

Eu tenho um projeto em PHP e MySQL

Tem uma database chamada easy e a uma tabela chamada usuários

E dentro da tabela tem usuário,senha, saldo

 

Bem.

Eu tenho um random resultados em duas form na (resultados.php)eu queria fazer que quando a pessoa clicasse no botão Gerar usasse o saldo e gerasse o resultado.

Exemplo,a pessoa já começa com 1000 de saldo e o botão diminui esse saldo em 100 e quando esse saldo chegasse em 0 se tentasse usar dá um erro de saldo insuficiente.

Como posso fazer isso?

Dei uma olhada em uns artigos aqui mas estou meio confuso,sou iniciante em PHP mas tenho uma noçãozinha .

Boa noite a todos.

 

Share this post


Link to post
Share on other sites

Olá, primeiro passo você precisa ter uma tabela com um campo int(11) auto incremento, para gerar um ID único para cada usuário, ok?

 

Após isso, parto do pressuposto que você tem uma tabela com ID, usuário, senha e saldo. E que os usuários já possuam um Saldo em conta.

 

Consultar o saldo usuário.

Como?

Utilizando o ID do usuário. Quando o usuário clicar no Botão "Gerar", você terá seu ID e consultará no banco para obter seu saldo. Ex:

$id = 11; // supondo que o ID do usuário é 11
$sql = "SELECT saldo FROM usuarios WHERE id = '$id'"; // retornará apenas o saldo do usuário acima
// executar a query e guardar o saldo numa variável

Após ter seu saldo, precisa verificara se ele não é 0 e que seja maior que o número que você queira subtrair, ex:

$id = 11;
$saldo = 650; // supondo que o saldo do usuário seja 650
$subtrair = 100; // supondo que queira tirar 100 do seu saldo
if($saldo == 0){
	echo "Erro, você está com o saldo zerado."
	exit(); // para a execução
}

if($saldo >= subtrair){ // se o saldo for maior ou igual ao que você quer subtrair
	$saldo = $saldo - $subtrair; // 650 - 100 = 550
	$sql = "UPDATE usuarios SET saldo = '$saldo' WHERE id = '$id'"; // atualiza o saldo do usuário para 550
	// executar a query para atualizar o saldo do usuario
	echo "Saldo atualizado com sucesso!";
}

É isso, é um norte para você continuar.

 

Não me atentei a nenhuma execução de query, validações complexas, apenas montei exemplo básico para você seguir.

 

Tenta e vai retornando aqui que te ajudo.

Share this post


Link to post
Share on other sites
Em 25/01/2019 at 22:13, marcosmarcolin disse:

Olá, primeiro passo você precisa ter uma tabela com um campo int(11) auto incremento, para gerar um ID único para cada usuário, ok?

 

Após isso, parto do pressuposto que você tem uma tabela com ID, usuário, senha e saldo. E que os usuários já possuam um Saldo em conta.

 

Consultar o saldo usuário.

Como?

Utilizando o ID do usuário. Quando o usuário clicar no Botão "Gerar", você terá seu ID e consultará no banco para obter seu saldo. Ex:


$id = 11; // supondo que o ID do usuário é 11
$sql = "SELECT saldo FROM usuarios WHERE id = '$id'"; // retornará apenas o saldo do usuário acima
// executar a query e guardar o saldo numa variável

Após ter seu saldo, precisa verificara se ele não é 0 e que seja maior que o número que você queira subtrair, ex:


$id = 11;
$saldo = 650; // supondo que o saldo do usuário seja 650
$subtrair = 100; // supondo que queira tirar 100 do seu saldo
if($saldo == 0){
	echo "Erro, você está com o saldo zerado."
	exit(); // para a execução
}

if($saldo >= subtrair){ // se o saldo for maior ou igual ao que você quer subtrair
	$saldo = $saldo - $subtrair; // 650 - 100 = 550
	$sql = "UPDATE usuarios SET saldo = '$saldo' WHERE id = '$id'"; // atualiza o saldo do usuário para 550
	// executar a query para atualizar o saldo do usuario
	echo "Saldo atualizado com sucesso!";
}

É isso, é um norte para você continuar.

 

Não me atentei a nenhuma execução de query, validações complexas, apenas montei exemplo básico para você seguir.

 

Tenta e vai retornando aqui que te ajudo.

você teria esse sistema pronto com as querys pra executar?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By k9studio
      Olá Meus amigos,
       
      Minha tabela a baixo quero atualizar a order mais da erro, algum pode dar um help
      como os dados são armazenados:
      namesystem setting   value   order (honda)    (name)   (Honda)   1 (honda)    (xtts)   (ok)      0    (honda)   (visible)  (on)      0   
      erro ao atualizar.
       
      UPDATE system SET order = '1' WHERE namesystem ='honda'
      Fatal error: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'order = '1' WHERE WHERE namesystem ='honda'
      CREATE TABLE `system` (   `namesystem` text COLLATE utf8_unicode_ci NOT NULL,   `setting` text COLLATE utf8_unicode_ci NOT NULL,   `value` text COLLATE utf8_unicode_ci NOT NULL,   `order` int(1) NOT NULL,   KEY `namesystem_setting` (`namesystem`(32),`setting`(32)),   KEY `setting_value` (`setting`(32),`value`(32)) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    • By k9studio
      Olá Amigos,
      tenho essa tabela abaixo e estou apanhando para listar os dados e fazer validação,
      alguém pode ajudar como chamar os dados e validar mostrar o nome somente se estiver visible=on  

       
      CREATE TABLE `system` (   `namesystem` text COLLATE utf8_unicode_ci NOT NULL,   `setting` text COLLATE utf8_unicode_ci NOT NULL,   `value` text COLLATE utf8_unicode_ci NOT NULL,   `order` int(1) NOT NULL,   KEY `namesystem_setting` (`namesystem`(32),`setting`(32)),   KEY `setting_value` (`setting`(32),`value`(32)) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; como os dados estão na tabela:
       
      namesystem setting   value   order (honda)    (name)   (Honda)   1 (honda)    (xtts)   (ok)      0    (honda)   (visible)  (on)      0    (toyota)    (name)   (Toyota)  2 (toyota)    (xtts)   (ok)      0    (toyota)  (visible)  (on)      0    
    • By iguulima
      É possivel realizar uma consulta SQL em duas colunas da mesma tabela usando outra função que não seja o AND ou OR? Segue o meu Select ate agora:
       
      (SELECT * FROM product WHERE comid = $idcom AND status = 'Ativo' AND categ = $category AND nameprod like'%$search%'  ORDER BY id DESC)  
      Por exemplo se eu colocar um AND após buscar o nameprod, no nome do produto não tiver a palavra chave ele também não irá buscar. Ou se colocar um OR ele anulo as outras condições até onde eu sei.
      Iniciante em programação.
    • By fideles
      Caros,
       
      Venho por uma duvida que esta cruel comigo. Explico-lhes.
       
      Tenho um banco de dados contendo exatas 4 colunas (id, codigo, descricao, quantidade) e criei um relatorio no excel que me separa os codigos, neste caso seria 3 abas pq tenho somente 3 codigos internos (S = Solicitar, F = Forneceder, B = Baixado) e criei uma select com GROUP By codigo
       
      Ai no banco eu posso ter 30 codigos com S, 10 com F e 15 com B,
      SELECT * FROM solicitacoes WHERE n_solicitacao = '".$n_solicitacao."' GROUP BY codigo Acontece que essa instrução acima, lista somente a primeira linha de cada codigo, como que eu faço neste caso para ele listar todos codigos? Exibir no caso os 30 codigos com S, os 10 com F e os 15 com B ? 
       
      Estou comendo algo ou meu raciociono esta totalmente equivocado ?
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.