grego Postado Fevereiro 18, 2009 Denunciar Share Postado Fevereiro 18, 2009 Estou apelando aos feras do PHP. Explico:Exemplo 1echo "Valor <input name='valor' value='valor' size=20><br>";e depois$valor1 = $_POST['valor'];tudo bem, funciona pois é o correto e usual.Exemplo2mas quando pré-defino a variavel e quero alterá-la antes de gravar no banco, estou fazendo assim:$valor = 100;echo "Valor <input name=$valor' value='$valor' size=20><br>";$novovalor = $_POST['$valor];No Exemplo1, valor recebe e carrega $valor1No Exemplo2, $valor recebe e carrega $novovaloraí é que está o problema, pois como sou iniciante em PHP estou aplicando a lógica de outras linguagens ecomo $valor que já tem valor, mas quero alterá-lo antes de gravar dá a mensagem Indefined index.Obs: alterando error_reporting apenas não dá mais a mensagem, porém grava ZERO.alguém pode me ajudar ? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Fevereiro 18, 2009 Denunciar Share Postado Fevereiro 18, 2009 Não use: $_POST['$valor'];Use $_POST[$valor];Pois assim será pego o conteúdo da variável $valor e atribuido como índice do $_POST... mas não me lembro se dá pra usar apenas números... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 grego Postado Fevereiro 18, 2009 Autor Denunciar Share Postado Fevereiro 18, 2009 ESerra,troquei o comando, mas não resolveu. Em toda a Net não encontrei tutorial que trate de alterar variaveis.Tá dificil. Obrigado pela força. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Renato Penna Postado Fevereiro 18, 2009 Denunciar Share Postado Fevereiro 18, 2009 Se está aparecendo a mensagem de undefined index, então faça...if(isset($_POST[$valor])) { // seu código aqui. ... } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 grego Postado Fevereiro 18, 2009 Autor Denunciar Share Postado Fevereiro 18, 2009 Renato Penna, o comando que me indicou ainda não deu certo.if(isset($_POST['$valor1'])) Sem aspas dá Undefined variable em $valor1, porém COM aspas não dá o erro, mas{ não executa o conteudo de { } onde defino NOVA variavel que é a que está no INSERTe portanto tambem dá erro Undefined variable, já que não existe.echo "entrei";echo "<br>";echo "<br>";// seu código aqui.//...}você tem alguma ideia ? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Fevereiro 18, 2009 Denunciar Share Postado Fevereiro 18, 2009 Até agora não entendi para que você quer isso... mas seguindo a sua lógica...<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> </head> <body> <?php $valor = '100'; ?> <form id="form1" name="form1" method="post" action="?"> <p> <label> <input type="text" name="<?php echo $valor;?>" id="<?php echo $valor;?>" /> </label> </p> <p> <label> <input type="submit" name="button" id="button" value="Submit" /> </label> </p> </form> <?php if(isset($_POST[$valor])){ $valor_novo = $_POST[$valor]; echo '<hr>'.$valor_novo.'<hr>'; } ?> </body> </html> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 grego Postado Fevereiro 19, 2009 Autor Denunciar Share Postado Fevereiro 19, 2009 Como estou iniciando, tem coisas que ainda não entendo. Na linha que você definiu<input type="text" name="<?php echo $valor;?>" id="<?php echo $valor;?>" />alterei de id para value e deu certo, pois estava mostrando VAZIO, embora a variavel conservasse o valor.Explico o porque dessa rotina:Imagine o Contas a Pagar. Tenho o valor da fatura e quantidade de parcelas. Lá onde defini $valor=100 será ValorTotal / Parcelas e os demais campos como DataVencimento.Antes de gravar no BD, eu preciso ajustar o valor das parcelas, assim como alterar o Vencimento que virá incrementado de 30 em 30 dias conforme qtd parcelas.beleza. Obrigado pela ajuda ESerra. Agora é só completar o código com outras variaveis.Assunto Resolvido Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
grego
Estou apelando aos feras do PHP. Explico:
Exemplo 1
echo "Valor <input name='valor' value='valor' size=20><br>";
e depois
$valor1 = $_POST['valor'];
tudo bem, funciona pois é o correto e usual.
Exemplo2
mas quando pré-defino a variavel e quero alterá-la antes de gravar no banco, estou fazendo assim:
$valor = 100;
echo "Valor <input name=$valor' value='$valor' size=20><br>";
$novovalor = $_POST['$valor];
No Exemplo1, valor recebe e carrega $valor1
No Exemplo2, $valor recebe e carrega $novovalor
aí é que está o problema, pois como sou iniciante em PHP estou aplicando a lógica de outras linguagens e
como $valor que já tem valor, mas quero alterá-lo antes de gravar dá a mensagem Indefined index.
Obs: alterando error_reporting apenas não dá mais a mensagem, porém grava ZERO.
alguém pode me ajudar ?
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados
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.