1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

PHP calculadora

Discussão em 'Programação' iniciada por Psycho_Mind, 17 de Junho de 2012. (Respostas: 4; Visualizações: 3476)

  1. Psycho_Mind

    Psycho_Mind Power Member

    Boas.

    Estou a começar no PHP e estava a tentar como exercicio fazer uma calculadora, mas estou com dificuldades para concluir o código, que segue abaixo, e assim gostava de saber o que me falta. Obrigado desde já.

    <form action="calculadora.php" method="post">

    Valor: <input type="text" name="valor1" />
    <p>

    Função: <select name="funcao">

    <option value="somar">Somar</option>
    <option value="subtrair">Subtrair</option>
    <option value="multiplicar">Multiplicar</option>
    <option value="dividir">Dividir</option>

    </select>

    <p>
    Valor: <input type="text" name="valor2" />

    <p>
    Resultado: <input type="text" name="valor3" value="<?php echo $resultado; ?>" />

    <p>
    <input type="submit" name="calcular" value="Calcular" onclick="location.href'='http://localhost/meus/calculadora.php'">


    </form>

    <?php

    if(!isset($_POST["Calcular"])){
    echo "";
    }
    else{
    $valor1=$_POST["valor1"];
    $valor2=$_POST["valor2"];
    $função=$_POST["funcao"];

    if(funcao=="somar"){
    $resultado=$valor1+$valor2;
    }

    else if(funcao=="subtrair"){
    $resultado=$valor1-$valor2;
    }

    else if(funcao=="multiplicar"){
    $resultado=$valor1*$valor2;
    }

    else if(funcao=="dividir"){
    $resultado=$valor1/$valor2;
    }

    }

    ?>
     
  2. bruni

    bruni Power Member

    1. $função=$_POST["funcao"]; -> $funcao=$_POST["funcao"];
    2. if(!isset($_POST["Calcular"])){ -> if(!isset($_POST["calcular"])){
    3. else if(funcao==....){ -> falta o $ antes de funcao!
    4. O codigo php têm que vir antes da form porque mostras o valor $resultado



    PHP:
    <?php

    if(!isset($_POST["calcular"])){
    echo 
    "";
    }
    else{
    $valor1=$_POST["valor1"];
    $valor2=$_POST["valor2"];
    $funcao=$_POST["funcao"];

    if(
    $funcao=="somar"){
    $resultado=$valor1+$valor2;
    }

    else if(
    $funcao=="subtrair"){
    $resultado=$valor1-$valor2;
    }

    else if(
    $funcao=="multiplicar"){
    $resultado=$valor1*$valor2;
    }

    else if(
    $funcao=="dividir"){
    $resultado=$valor1/$valor2;
    }

    }

    ?> 
    <form action="calculadora.php" method="post">

    Valor: <input type="text" name="valor1" />
    <p>

    Função: <select name="funcao">

    <option value="somar">Somar</option>
    <option value="subtrair">Subtrair</option>
    <option value="multiplicar">Multiplicar</option>
    <option value="dividir">Dividir</option>

    </select>

    <p>
    Valor: <input type="text" name="valor2" />

    <p>
    Resultado: <input type="text" name="valor3" value="<?php echo $resultado?>" />

    <p>
    <input type="submit" name="calcular" value="Calcular">


    </form>

     
  3. ftav

    ftav Power Member

    E porque não usar um "CASE" em vez dos "IF"/"ELSEIF"?
     
  4. Psycho_Mind

    Psycho_Mind Power Member

    Muito obrigado. Agora funciona bem. Tenho de ter mais atenção a alguns pormenores.
     
  5. Psycho_Mind

    Psycho_Mind Power Member

    Boas.
    Como disse ainda sou novato no PHP e o If/else if pareceu-me ser a forma mais simples de implementar.
     

Partilhar esta Página