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