Mostrar resultado em input type
Boa tarde, não estou conseguindo mostrar um resultado de uma soma em um input type, não queria mostrar o mesmo no corpo da pagina
<p>Resultado: <input type="text" name="resultado" /><?php echo $resultado?></p>
Fabio Santos
Curtidas 0
Melhor post
Fabio Santos
23/10/2014
William e Alekym, deu certo agora! no inicio não estava dando certo, conferindo, OK!
GOSTEI 1
Mais Respostas
Joao Lima
12/10/2014
falta um ; ai
GOSTEI 0
Wander Santos
12/10/2014
VErifique se a variavel esta vazia ou nao. Faz um condição com if else pra ver se tem valor ou nao
Se quiser colocar o valor dentro do input faca assim
Se quiser colocar o valor dentro do input faca assim
<input type="text" name="resultado" value="<?php echo $resultado?>"/>
GOSTEI 0
Fabio Santos
12/10/2014
Funcionou mas está aparecendo assim no form
[img]http://arquivo.devmedia.com.br/forum/imagem/372811-20141014-142509.jpg[/img]
[img]http://arquivo.devmedia.com.br/forum/imagem/372811-20141014-142509.jpg[/img]
GOSTEI 0
Wander Santos
12/10/2014
Talvez a variavel nao esteja definida
GOSTEI 0
Fernando André
12/10/2014
Tente assim:
<input name="resultado" type="text" id="resultado" value="<?php echo $x['resultado'];?>" />
GOSTEI 0
Fabio Santos
12/10/2014
Talvez a variavel nao esteja definida
Está sim.
$resultado = "";
GOSTEI 0
Fabio Santos
12/10/2014
Tente assim:
<input name="resultado" type="text" id="resultado" value="<?php echo $x['resultado'];?>" />
Piorou, agora não apresenta o resultado e com os codigos ainda.
GOSTEI 0
Fernando André
12/10/2014
estranho rsrs, eu uso dessa forma no meu sistema.
GOSTEI 0
Wander Santos
12/10/2014
Tem como vc postar TODO o codigo?
GOSTEI 0
Fabio Santos
12/10/2014
Aqui:
<html> <head> <title>TESTE</title> </head> <body> <?php if ( isset($_POST['btnOperacao']) ) { $resultado = ""; $valor1 = $_POST['valor1']; $valor2 = $_POST['valor2']; switch ($_POST['operacao']){ case "1": $resultado = $valor1 + $valor2; break; case "2": $resultado = $valor1 - $valor2; break; case "3": $resultado = $valor1 * $valor2; break; case "4": if ( $valor2 != "0" ) $resultado = $valor1 / $valor2; else $resultado = "Não é possivel dividir por zero"; break; } } if (isset ($resultado) && $resultado != "") { echo "<h3>O resultado é: ".$resultado."</h3"; } ?> <form method="post"> <p>Valor 1: <input type="text" name="valor1" /></p> <p>Valor 2: <input type="text" name="valor2" /></p> <p>Selecione a Operação: <select name="operacao"> <option value="1">Adição</option> <option value="2">Subtração</option> <option value="3">Multiplicação</option> <option value="4">Divisão</option> </select> </p> <p><input type="submit" value="Executar" name="btnOperacao"></p> <p>Resultado:<input name="resultado" type="text" id="resultado" value="<?php echo $x['resultado'];?>"/></p> </form> </body> </html>
GOSTEI 0
Fabio Santos
12/10/2014
e aí Wander...
GOSTEI 0
Fernando C
12/10/2014
Se ainda não resolveu, crie um 2º formulário na mesma pg e dai coloque o código que vc já usou no seu 1º post.
GOSTEI 0
William
12/10/2014
Existem várias maneiras de você resolver isso, mas primeiro você tem que entender o porque está acontecendo !
Na primeira vez que a página é carregada a variável $resultado não tem valor e não foi inicializada, porque ela está dentro da condição IF, mas mesmo assim você está tentando imprimir ela na página, por isso ocorre o erro
1º solução: Inicialize a variável antes da condição IF, dessa maneira a variável estará vazia mesmo sem entrar na condição.
2º Solução: Utilize uma condição ternária junto com a função isset() para verificar se a variável existe antes de tentar imprimi-lá.
Na primeira vez que a página é carregada a variável $resultado não tem valor e não foi inicializada, porque ela está dentro da condição IF, mas mesmo assim você está tentando imprimir ela na página, por isso ocorre o erro
1º solução: Inicialize a variável antes da condição IF, dessa maneira a variável estará vazia mesmo sem entrar na condição.
<html> <head> <title>TESTE</title> </head> <body> <?php $resultado = ""; if ( isset($_POST['btnOperacao']) ) { $valor1 = $_POST['valor1']; $valor2 = $_POST['valor2']; switch ($_POST['operacao']){ case "1": $resultado = $valor1 + $valor2; break; case "2": $resultado = $valor1 - $valor2; break; case "3": $resultado = $valor1 * $valor2; break; case "4": if ( $valor2 != "0" ) $resultado = $valor1 / $valor2; else $resultado = "Não é possivel dividir por zero"; break; } } if (isset ($resultado) && $resultado != "") { echo "<h3>O resultado é: ".$resultado."</h3"; } ?> <form method="post"> <p>Valor 1: <input type="text" name="valor1" /></p> <p>Valor 2: <input type="text" name="valor2" /></p> <p>Selecione a Operação: <select name="operacao"> <option value="1">Adição</option> <option value="2">Subtração</option> <option value="3">Multiplicação</option> <option value="4">Divisão</option> </select> </p> <p><input type="submit" value="Executar" name="btnOperacao"></p> <p>Resultado:<input name="resultado" type="text" id="resultado" value="<?=$resultado?>"/></p> </form> </body> </html>
2º Solução: Utilize uma condição ternária junto com a função isset() para verificar se a variável existe antes de tentar imprimi-lá.
<html> <head> <title>TESTE</title> </head> <body> <?php if ( isset($_POST['btnOperacao']) ) { $resultado = ""; $valor1 = $_POST['valor1']; $valor2 = $_POST['valor2']; switch ($_POST['operacao']){ case "1": $resultado = $valor1 + $valor2; break; case "2": $resultado = $valor1 - $valor2; break; case "3": $resultado = $valor1 * $valor2; break; case "4": if ( $valor2 != "0" ) $resultado = $valor1 / $valor2; else $resultado = "Não é possivel dividir por zero"; break; } } if (isset ($resultado) && $resultado != "") { echo "<h3>O resultado é: ".$resultado."</h3"; } ?> <form method="post"> <p>Valor 1: <input type="text" name="valor1" /></p> <p>Valor 2: <input type="text" name="valor2" /></p> <p>Selecione a Operação: <select name="operacao"> <option value="1">Adição</option> <option value="2">Subtração</option> <option value="3">Multiplicação</option> <option value="4">Divisão</option> </select> </p> <p><input type="submit" value="Executar" name="btnOperacao"></p> <p>Resultado:<input name="resultado" type="text" id="resultado" value="<?= (isset($resultado))? $resultado : ''?>"/></p> </form> </body> </html>
GOSTEI 0
Alex William
12/10/2014
Não sei se já foi resolvido, mas ...
Deixe o código da seguinte maneira:
No teste que eu fiz aqui, funcionou. Espero ter ajudado!! :D
Deixe o código da seguinte maneira:
<html> <head> <title>TESTE</title> </head> <body> <?php if (isset($_POST['btnOperacao'])) { $resultado = ""; $valor1 = $_POST['valor1']; $valor2 = $_POST['valor2']; switch ($_POST['operacao']) { case "1": $resultado = $valor1 + $valor2; break; case "2": $resultado = $valor1 - $valor2; break; case "3": $resultado = $valor1 * $valor2; break; case "4": if ( $valor2 != "0" ) { $resultado = $valor1 / $valor2; }else { $resultado = "Não é possivel dividir por zero"; break; } } } if (isset ($resultado) && $resultado != "") { echo "<h3>O resultado é: ".$resultado."</h3"; } ?> <form method="post"> <p>Valor 1: <input type="text" name="valor1" /></p> <p>Valor 2: <input type="text" name="valor2" /></p> <p>Selecione a Operação: <select name="operacao"> <option value="1">Adição</option> <option value="2">Subtração</option> <option value="3">Multiplicação</option> <option value="4">Divisão</option> </select> </p> <p><input type="submit" value="Executar" name="btnOperacao"></p> <p>Resultado:<input name="resultado" type="text" id="resultado" value=""/></p> </form> </body> <script> document.getElementById('resultado').value = '<?=$resultado ?>'; </script> </html>
No teste que eu fiz aqui, funcionou. Espero ter ajudado!! :D
GOSTEI 0