Ir para conteúdo
Fórum Script Brasil
  • 0

UPDATE COM SUBTRACAO + DADOS DE OUTRA TABELA


Enigma_avatar

Pergunta

pessoal estou tentado fazer um update pegando valor de outra tabela porem os dados da segunda tabela não são enviado

to passando o id da carta

<a href=index.php?pag=shopcomprar&id={$row['ID']} '>[COMPRAR]</a>

e tentando inserir em outra tabela comparando resultados, onde m_duelos = dinheiro que o ususario tem

//selecionando dados da tabela carta
$result = mysql_query("SELECT * FROM cartas WHERE ID='$id'");
while ($row = mysql_fetch_array($result, MYSQL_BOTH)) {
$preco = $row['preco'];
$nome = $row['nome'];

} 

//selecionando dados da tabela usuarios
$result2 = mysql_query("SELECT * FROM novo_usuarios WHERE ID='$id_user'");
while ($row = mysql_fetch_array($result, MYSQL_BOTH)) {
$marcas = $row['m_duelo'];
} 


// CONDICOE //
if($preco>$marcas){ 


//nesta parte os dados da segunda parece nao estar pegando so os da 1 //
$result3 = mysql_query("UPDATE novo_usuarios SET m_duelo='$marcas - $preco' , deck1=(deck1' + <br>$nome<br>) WHERE ID='$id_user' ");
echo " A compra da carta <b>$nome</b> $marcas foi efetuado com sucesso. <br>Você ja pode usa-la em duelos RPG.<br> Voce ainda possui $row2[m_duelo] Marcas de Duelo";
//SE DER TUDO OK //



// FECHAMENTO //
}else{echo "<center>Você não tem marcas suficiente para comprar esta carta.";}

para tentar ilustrar o que estou querendo com isso , e que quando clicar em comprar seja feito

1º a comparação entre o valor da carta e o dinheiro que o usuário tem

2º update do dinheiro que o usuario tem - o valor da carta

3º pegar o nome da carta e inserir no campo deck 1 ( porem esse campo sera acrecentado, não ira apagar o valor que tem la, so ira inserir algo depois do que já tem)

pesquisando achei esses comandos que usei porem não funciona, alguém me da uma luz?

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Assumindo que os dados de $id e $id_user estão corretos(seria interessante você dar um echo ou var_dump() pra confirmar), você faz os dois SELECTs da maneira correta mas se atrapalhou na condição.

Você quer fazer o UPDATE quando $marcas for maior que $preço, porém no if você pergunta se $preço é maior que $marcas, simplesmente você inverteu a posição.

No UPDATE, tenho minhas dúvidas quando à subtração e a concatenação que você está fazendo. Eu faria assim:

<?php
mysql_query("UPDATE novo_usuarios SET m_duelo='".($marcas - $preço)."' , deck1=CONCAT(deck1', <br>$nome<br>) WHERE ID='$id_user' ");

No echo que você faz em seguida você usa $row2[m_duelo] quando deveria usar $marcas.

Acredito que com isso deva funcionar.

Espero ter ajudado.

Tudo de bom.

Link para o comentário
Compartilhar em outros sites

  • 0
$result3 = mysql_query("UPDATE novo_usuarios SET m_duelo=m_duelo-'$preco' , deck1=concat(deck1, '<br>$nome') WHERE ID='$id_user' ");
echo " A compra da carta <b>$nome</b> foi efetuado com sucesso. <br>Você ja pode usa-la em duelos RPG.<br> Voce ainda possui ".consulta_usuario('m_duelo', $id_user)." Marcas de Duelo";
Markus Magnus realmente era aquilo mesmo tinha testado o que você me passou porem ali no concat tinha que coloca ' << essa coisa

retirei o result2 inteiro não sei porque parece que não tava pegando o valor do marcas

o if ficou assim if($preço<$marcas){ ( não sei porque mais eu leio isso assim se o preço e menor que as marcas) de toda maneira ta funcionando perfeito

vlws pela forca

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...