Ir para conteúdo

POWERED BY:

Arquivado

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

Unisov

usar variaveis em update

Recommended Posts

ola, sera q é possivel usar variaveis para defenir os campos a serem atualizados?

 

tipo assim?

 

sql= mysql_query("UPDATE tabela SET '$god'='$games_god'+1,'$god_won'='$won_god'+$won WHERE id = 1");

dessa forma q tentei nao funciona...

se isso é possivel, d que forma seria feito?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha, eu acho que não deve haver necessidade de colocar variáveis nas rows da tabela, olhe um exemplo mudado:

 

$sql= mysql_query("UPDATE tabela SET nome='$games_god'+1, idade='$won_god'+$won WHERE id=1");

 

Agora acho que funciona =D Té mais!

Compartilhar este post


Link para o post
Compartilhar em outros sites

ola Eliseu M.

o problema é q estou criando uma pagina q vai precisar atualizar varios campos diferentes da tabela...

eu pretendo definir qual o campo a ser atualizado dando a definiçao da variavel no link.

por isso estou tentando dessa forma

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Unisov

 

O problema parece-me que está na variável sql, está faltando o "$".

 

Testei com

 

$campo="seu_campo_a_actualizar";
$seu_campo_a_actualizar='5';

$sql = mysql_query("UPDATE tabela SET $campo = '$seu_campo_a_actualizar'+1 WHERE id = '1'");

e funciona perfeitamente. Ou seja, o campo "seu_campo_a_actualizar" da tabela recebe o valor 6. No entanto a solução mais usual para fazer o que pretendes parece-me que será um pouco diferente. Normalmente primeiro faz-se uma leitura do registo que pretendes na tabela e com isso iniciar as variáveis de trabalho no script depois alterar apenas os valores dos campos que seja necessário alterar e por fim fazer o upgrade de todos os campos do registo na tabela.

Isto não quer dizer que a tua forma de trabalho esteja errada, só te recomendo que vejas as potencialidades da sintaxe '$$campo' ("variável variável" em que além do valor da variável também o nome da variável é desconhecido) que me parece te pode ser útil; eu necessitei de usar para um fim bem mais complexo e poupou-me muitas dores de cabeça ao criar um gerenciador de banco dse dados tipo phpmyadmin uma vez que quando actualizava o resisto no banco de dados até o número de campos a actualizar no registo me era desconhecido.

Compartilhar este post


Link para o post
Compartilhar em outros sites

obrigado DCD.

o problema era realmente esse detalhe do '$'.

agora esta funcionando perfeitamente.

estive vendo sobre sua sugestao e certamente seria mais viavel, mas ainda nao consigo implementar um codigo dessa forma.

entao terei que continuar com essa forma que estou usando.

mas de qualquer forma, agradeç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.