Array
(
    [0] => stdClass Object
        (
            [Votos_Balanceados] => 1
            [id] => 522380
            [titulo] => Divisão por zero - não aparece mensagem
            [dataCadastro] => DateTime Object
                (
                    [date] => 2015-06-09 21:05:37
                    [timezone_type] => 3
                    [timezone] => America/Sao_Paulo
                )

            [isFirstPost] => -1
            [idUsuario] => 418260
            [status] => A
            [isExample] => 
            [NomeUsuario] => Karine Sobral
            [Apelido] => 
            [Foto] => 418260_20150315104439.jpg
            [Conteudo] => Agora sim, entendi perfeitamente, obrigada e desculpa por qualquer coisa.
        )

)

Divisão por zero - não aparece mensagem

PHP
Karine Sobral
   - 29 mai 2015

Gostaria que aparecesse no browser uma mensagem informando que a divisão por zero não é possivel, mas não estou conseguindo.
#Código


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.

Post mais votado

Karine Sobral
   - 09 jun 2015

Agora sim, entendi perfeitamente, obrigada e desculpa por qualquer coisa.

Marcio Araujo
   - 29 mai 2015

Posta o código completo por favor!

Jothaz
   - 29 mai 2015


Citação:
Gostaria que aparecesse no browser uma mensagem informando que a divisão por zero não é possivel, mas não estou conseguindo.

#Código


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

How to efficiently use try…catch blocks in PHP

Karine Sobral
   - 29 mai 2015

Marcio, código completo:

#Código


<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>

Karine Sobral
   - 29 mai 2015

Mas está errado Jothaz essa forma?

Giovani Leite
   - 29 mai 2015

Tentando entender o código, tambem com dificuldade, hehehe.

Karine Sobral
   - 29 mai 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.

Karine Sobral
   - 29 mai 2015


Citação:
Tentando entender o código, tambem com dificuldade, hehehe.


Se achar alguma forma, por favor me informe!

Giovani Leite
   - 29 mai 2015

Informo sim.

Karine Sobral
   - 30 mai 2015

Código completo diferente

#Código


<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>

Giovani Leite
   - 30 mai 2015

Não consegui, sempre aparece o erro que descreveu, não aparece a mensagem.

Karine Sobral
   - 30 mai 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.

Marcio Araujo
   - 30 mai 2015

Karine, já que postou os dois códigos, da para você analisar.

David Sylvestre
   - 01 jun 2015

Karine, seu problema foi um erro de digitação.

Seu código:
#Código

<option value="5">Divisao</option>


Código funcional
#Código
<option value="4">Divisão</option>

Karine Sobral
   - 01 jun 2015

Poxa vida! Iria demorar muito para perceber isso! David, muito obrigada, olhei, olhei e olhei e nada!

Marcio Araujo
   - 01 jun 2015

Tambem passou despercebido por mim.

Thiago Moraes
   - 03 jun 2015

faz intval($str) por que se não se ta tentando dividir uma string cara

Karine Sobral
   - 03 jun 2015

Não entendi Thiago.

Karine Sobral
   - 04 jun 2015

Thiago???

Thiago Moraes
   - 09 jun 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