Divisão por zero - não aparece mensagem
Gostaria que aparecesse no browser uma mensagem informando que a divisão por zero não é possivel, mas não estou conseguindo.
e na multiplicação ele não executa.
case "4":
if($_POST['valor2'] != "0" )
$resultado = $_POST['valor1'] / $_POST['valor2'];
else
$resultado = "Não é possivel dividir por zero";
break;
e na multiplicação ele não executa.
Karine Sobral
Curtidas 0
Melhor post
Karine Sobral
09/06/2015
Agora sim, entendi perfeitamente, obrigada e desculpa por qualquer coisa.
GOSTEI 1
Mais Respostas
Marcio Araujo
29/05/2015
Posta o código completo por favor!
GOSTEI 0
Jothaz
29/05/2015
Gostaria que aparecesse no browser uma mensagem informando que a divisão por zero não é possivel, mas não estou conseguindo.
e na multiplicação ele não executa.
case "4":
if($_POST['valor2'] != "0" )
$resultado = $_POST['valor1'] / $_POST['valor2'];
else
$resultado = "Não é possivel dividir por zero";
break;
e na multiplicação ele não executa.
Você pode usar o try
Outros links:
Exceções - PHP
[url:descricao=How to efficiently use try…catch blocks in PHP]http://stackoverflow.com/questions/17549584/how-to-efficiently-use-try-catch-blocks-in-php[/url]
GOSTEI 0
Karine Sobral
29/05/2015
Marcio, código completo:
<html>
<head>
<title>Curso de PHP</title>
</head>
<body>
<?php
if ( isset($_POST['btnOperacao']) ) {
$resultado = "";
switch ($_POST['operacao']){
case "1":
$resultado = $_POST['valor1'] + $_POST['valor2'];
break;
case "2":
$resultado = $_POST['valor1'] - $_POST['valor2'];
break;
case "3":
$resultado = $_POST['valor1'] * $_POST['valor2'];
break;
case "4":
if($_POST['valor2'] != "0" )
$resultado = $_POST['valor1'] / $_POST['valor2'];
else
$resultado = "Não é possivel dividir por zero";
break;
}
}
if ( isset($resultado) && $resultado != ""){
echo "<h3>O resultado e: ".$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 operacao:
<select name="operacao">
<option value="1">Adicao</option>
<option value="2">Subtracao</option>
<option value="3">Multiplicacao</option>
<option value="5">Divisao</option>
</select></p>
<p><input type="submit" value="Executar" name="btnOperacao" /></p>
</form>
</body>
</html>
GOSTEI 0
Karine Sobral
29/05/2015
Mas está errado Jothaz essa forma?
GOSTEI 0
Giovani Leite
29/05/2015
Tentando entender o código, tambem com dificuldade, hehehe.
GOSTEI 0
Karine Sobral
29/05/2015
Pessoal, estou com um código que funciona, mas eu queria entender o por que este não funciona, para eu ter mais ideias.
GOSTEI 0
Karine Sobral
29/05/2015
Tentando entender o código, tambem com dificuldade, hehehe.
Se achar alguma forma, por favor me informe!
GOSTEI 0
Giovani Leite
29/05/2015
Informo sim.
GOSTEI 0
Karine Sobral
29/05/2015
Código completo diferente
<html>
<head>
<title>Curso de PHP</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($_POST['valor2'] != "0")
$resultado = $valor1 / $valor2;
else
$resultado = "Não é possível 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 operacao:
<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>
</form>
</body>
</html>
GOSTEI 0
Giovani Leite
29/05/2015
Não consegui, sempre aparece o erro que descreveu, não aparece a mensagem.
GOSTEI 0
Karine Sobral
29/05/2015
Sem problema Giovani, deu certo aqui, mas como disse antes, só queria o código que estava dando errado, entende-lo melho, mas obrigada.
GOSTEI 0
Marcio Araujo
29/05/2015
Karine, já que postou os dois códigos, da para você analisar.
GOSTEI 0
David Sylvestre
29/05/2015
Karine, seu problema foi um erro de digitação.
Seu código:
Código funcional
Seu código:
<option value="5">Divisao</option>
Código funcional
<option value="4">Divisão</option>
GOSTEI 0
Karine Sobral
29/05/2015
Poxa vida! Iria demorar muito para perceber isso! David, muito obrigada, olhei, olhei e olhei e nada!
GOSTEI 0
Marcio Araujo
29/05/2015
Tambem passou despercebido por mim.
GOSTEI 0
Thiago Moraes
29/05/2015
faz intval($str) por que se não se ta tentando dividir uma string cara
GOSTEI 0
Karine Sobral
29/05/2015
Não entendi Thiago.
GOSTEI 0
Karine Sobral
29/05/2015
Thiago???
GOSTEI 0
Thiago Moraes
29/05/2015
Então, eu vi ali, que a variavel que você está tentando dividir é uma string.
Por exemplo:
Todos os posts que pegamos, vem uma String não vem integer. (Pelos meus conhecimentos)
Você está tentando:
$valor1 = $_POST['valor1'];
$valor2 = $_POST['valor2'];
$valor1 = $valor1 / $valor2 // lembrando que isso é um exemplo.
o correto seria:
$valor1 = intval($_POST['valor1']);
$valor2 = intval($_POST['valor2']);
$valor1 = $valor1 / $valor2
Por exemplo:
Todos os posts que pegamos, vem uma String não vem integer. (Pelos meus conhecimentos)
Você está tentando:
$valor1 = $_POST['valor1'];
$valor2 = $_POST['valor2'];
$valor1 = $valor1 / $valor2 // lembrando que isso é um exemplo.
o correto seria:
$valor1 = intval($_POST['valor1']);
$valor2 = intval($_POST['valor2']);
$valor1 = $valor1 / $valor2
GOSTEI 0