Ir para conteúdo
Fórum Script Brasil
  • 0

calculadora em php


antonioMSF93

Pergunta

problema: a calculadora não calcula.

salva galera, eu estou montando uma calculadora em php só que ela não ta calculando ela mostra apenas a conta aritimetica, o que eu posso fazer?

esse é o script das paginas:

a caixa de codebox não esta funcionando;

arquivo cal.php;

<?php

$valor1 = $_GET["valor1"];

$valor2 = $_GET["valor2"];

$valor3 = $_GET["valor3"];

$valor4 = $_GET["valor4"];

$valor5 = $_GET["valor5"];

$valor6 = $_GET["valor6"];

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns=http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Untitled Document</title>

</head>

<script language="Javascript">

function teste(e) {

if(window.event) {

// for IE, e.keyCode or window.event.keyCode can be used

key = e.keyCode;

}

else if(e.which) {

// netscape

key = e.which;

}

if (key!=8 || key < 48 || key > 57) return (((key > 47) && (key < 58)) || (key==8));

{

return true;

}

}

</script>

<body>

<table width="100%" cellspacing="0" cellpadding="0">

<tr>

<th scope="row"><form id="form1" name="form1" method="post" action="call.php" onkeypress="return teste(event);">

<table width="100%" cellspacing="0" cellpadding="0">

<tr>

<th scope="row"><label>

<input name="valor1" type="text" value="<?php echo "0";?> " />

</label>

<label></label>

<label></label></th>

<td><label>

<select name="op1" id="op1">

<option value="+" <? if ($ari1=="+"){ echo "selected"; } ?> >Somar +</option>

<option value="Subtrair -" <? if ($ari1=="-"){ echo "selected"; } ?> >Subtrair -</option>

<option value="Dividir /" <? if ($ari1=="/"){ echo "selected"; } ?> >Dividir /</option>

<option value="Multiplicar *" <? if ($ari1=="*"){ echo "selected"; } ?> >Multiplicar *</option>

</select>

</label></td>

</tr>

<tr>

<th scope="row"><label>

<input name="valor2" type="text" value="<?php echo "0";?> " />

</label>

<label></label>

<label></label></th>

<td><select name="op2" id="op2">

<option value="+" <? if ($ari2=="+"){ echo "selected"; } ?> >Somar +</option>

<option value="Subtrair -" <? if ($ari2=="-"){ echo "selected"; } ?> >Subtrair -</option>

<option value="Dividir /" <? if ($ari2=="/"){ echo "selected"; } ?> >Dividir /</option>

<option value="Multiplicar *" <? if ($ari2=="*"){ echo "selected"; } ?> >Multiplicar *</option>

</select></td>

</tr>

<tr>

<th scope="row"><label>

<input name="valor3" type="text" value="<?php echo "0";?> " />

</label>

<label></label>

<label></label></th>

<td><select name="op3" id="op3">

<option value="+" <? if ($ari3=="+"){ echo "selected"; } ?> >Somar +</option>

<option value="Subtrair -" <? if ($ari3=="-"){ echo "selected"; } ?> >Subtrair -</option>

<option value="Dividir /" <? if ($ari3=="/"){ echo "selected"; } ?> >Dividir /</option>

<option value="Multiplicar *" <? if ($ari3=="*"){ echo "selected"; } ?> >Multiplicar *</option>

</select></td>

</tr>

<tr>

<th scope="row"><label>

<input name="valor4" type="text" value="<?php echo "0";?> " />

</label>

<label></label>

<label></label></th>

<td><select name="op4" id="op4">

<option value="+" <? if ($ari4=="+"){ echo "selected"; } ?> >Somar +</option>

<option value="Subtrair -" <? if ($ari4=="-"){ echo "selected"; } ?> >Subtrair -</option>

<option value="Dividir /" <? if ($ari4=="/"){ echo "selected"; } ?> >Dividir /</option>

<option value="Multiplicar *" <? if ($ari4=="*"){ echo "selected"; } ?> >Multiplicar *</option>

</select></td>

</tr>

<tr>

<th scope="row"><label>

<input name="valor5" type="text" value="<?php echo "0";?> " />

</label>

<label></label>

<label></label></th>

<td><select name="op5" id="op5">

<option value="+" <? if ($ari5=="+"){ echo "selected"; } ?> >Somar +</option>

<option value="Subtrair -" <? if ($ari5=="-"){ echo "selected"; } ?> >Subtrair -</option>

<option value="Dividir /" <? if ($ari5=="/"){ echo "selected"; } ?> >Dividir /</option>

<option value="Multiplicar *" <? if ($ari5=="*"){ echo "selected"; } ?> >Multiplicar *</option>

</select></td>

</tr>

<tr>

<th scope="row"><label>

<input name="valor6" type="text" value="<?php echo "0";?> " />

</label>

<label></label>

<label></label></th>

<td>&nbsp;</td>

</tr>

<tr>

<th colspan="2" scope="row"><label>

<input name="cal" type="submit" id="cal" value="Calcular" />

</label>

<label>

<input name="lim" type="reset" id="lim" value="Limpar" />

</label></th>

</tr>

</table>

</form>

</th>

</tr>

</table>

</body>

</html>

e esse é o aquivo que recebe a conta a ser executada:

arquivo : call.php

<?php

$valor1 = $_POST["valor1];

$op1 = $_POST["op1"];

$valor2 = $_POST["valor2"];

$op2 = $_POST["op2"];

$valor3 = $_POST["valor3"];

$op3 = $_POST["op3"];

$valor4 = $_POST["valor4"];

$op4 = $_POST["op4"];

$valor5 = $_POST["valor5"];

$op5 = $_POST["op5"];

$valor6 = $_POST["valor6"];

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Untitled Document</title>

</head>

<script type="text/javascript">

total = "<?php echo $valor1, $op1, $valor2, $op2, $valor3, $op3, $valor4, $op4, $valor5, $op5, $valor6; ?>";

document.write(total);

</script>

<body>

</body>

</html>

quem uder me dar uma ajuda eu agradeço

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Onde esta a soma? você só esta 'jogando' as váriaveis e imprimindo como strings ... alias a maioria parece nem ter conciecia do que é "tipagem" ... de uma procurada que você entendera porque está erando ...

Quanto ao seu problema o correto era fazer IF's que verificava que tipo de soma é e fazia a soma antes do resultado final e não 'jogar' assim, mas como tudo tem jeito só não para morte vai um alá gambiarra

<?php
eval("\$soma = $valor $op1 $valor2 $op2 $valor3 $op3 $valor4 $op4 $valor5 $op5 $valor6;");

echo "$valor1 $op1 $valor2 $op2 $valor3 $op3 $valor4 $op4 $valor5 $op5 $valor6 = $soma";
?>

Link para o comentário
Compartilhar em outros sites

  • 0
Onde esta a soma? você só esta 'jogando' as váriaveis e imprimindo como strings ... alias a maioria parece nem ter conciecia do que é "tipagem" ... de uma procurada que você entendera porque está erando ...

Quanto ao seu problema o correto era fazer IF's que verificava que tipo de soma é e fazia a soma antes do resultado final e não 'jogar' assim, mas como tudo tem jeito só não para morte vai um alá gambiarra

<?php
eval("\$soma = $valor $op1 $valor2 $op2 $valor3 $op3 $valor4 $op4 $valor5 $op5 $valor6;");

echo "$valor1 $op1 $valor2 $op2 $valor3 $op3 $valor4 $op4 $valor5 $op5 $valor6 = $soma";
?>

em vez de ifs utilize o switch vai poupar linhas

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...