antonioMSF93 Postado Março 3, 2010 Denunciar Share Postado Março 3, 2010 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 usedkey = e.keyCode;}else if(e.which) {// netscapekey = 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> </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 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 SK15 Postado Março 6, 2010 Denunciar Share Postado Março 6, 2010 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"; ?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rickayron Postado Março 7, 2010 Denunciar Share Postado Março 7, 2010 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 Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
antonioMSF93
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> </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
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.