Ayuda calculadora simple en PHP(solucionado)

Iniciado por Senior++, 15 Noviembre 2013, 21:41 PM

0 Miembros y 2 Visitantes están viendo este tema.

Senior++

Bueno pues eso, resulta que estoy creando una calculadora en php pero me sale errores cuando lo ejecuto en el servidor

Notice: Undefined index: T1 in C:\Program Files (x86)\EasyPHP-5.3.6.1\www\sss.php on line 26

Notice: Undefined index: T2 in C:\Program Files (x86)\EasyPHP-5.3.6.1\www\sss.php on line 27

Notice: Undefined index: T3 in C:\Program Files (x86)\EasyPHP-5.3.6.1\www\sss.php on line 28
+ + = 0


Aquí el código a ver si es por algun error:

<html>  
<head>  
<title>Formulario.</title>  
</head>  

<body>  

<form method="POST" action="sumar.php">
   <p>Valor 1: <input type="text" name="T1" size="20"></p>
   <p>Valor 2: <input type="text" name="T2" size="20"></p>
   <p>Valor 3: <input type="text" name="T3" size="20"></p>
   <p><input type="submit" value="Sumar" name="B1"></p>
</form>

</body>
</html>
===============================
<html>  
<head>  
<title>Sumar.</title>  
</head>  

<body>  

<?php 
$valor1 
$_POST['T1']; 
$valor2 $_POST['T2']; 
$valor3 $_POST['T3']; 

$suma $valor1 $valor2 $valor3

echo 
"$valor1 + $valor2 + $valor3 = $suma"
?>


</body>
</html>
Vendo cuenta de LEAGUE OF LEGENDS lvl 30, EU west, muy barata

:ohk<any>

No son errores son advertencias.

$valor1 = $_POST['T1'];
$valor2 = $_POST['T2'];
$valor3 = $_POST['T3'];

No están definidos debido a que cuando inicias tu página no has enviado ningún valor.

En todo caso deberías hacer algo asi:

Código (php) [Seleccionar]

if(isset($_POST)){


Y dentro de las llaves hacer la recepción de los valores enviados en el formulario.
Un ejemplo mas simple sería:

Código (php) [Seleccionar]

<html> 
<head> 
<title>Formulario.</title> 
</head> 

<body> 

<form method="POST" action="sumar.php">
    <p>Valor 1: <input type="text" name="T1" size="20"></p>
    <p>Valor 2: <input type="text" name="T2" size="20"></p>
    <p>Valor 3: <input type="text" name="T3" size="20"></p>
    <p><input type="submit" value="Sumar" name="B1"></p>
</form>

</body>
</html>
<?php
if($_POST['T1']){

   
$valor1 $_POST['T1']; 
   
$valor2 $_POST['T2']; 
   
$valor3 $_POST['T3']; 

   
$suma $valor1 $valor2 $valor3

   echo 
$suma;
}

?>



Ahora si quisieras hacerlo mejor, hace esto:

Código (php) [Seleccionar]

<html> 
<head> 
<title>Formulario.</title> 
</head> 

<body> 

<form method="POST" action="sumar.php">
    <p>Valor 1: <input type="text" name="T1" size="20"></p>
    <p>Valor 2: <input type="text" name="T2" size="20"></p>
    <p>Valor 3: <input type="text" name="T3" size="20"></p>
    <p>Operador:
    <select name="operador">
        <option value="+">Suma</option>
        <option value="-">Resta</option>
        <option value="*">Multiplicacion</option>
    </select>
    </p>
    <p><input type="submit" value="Sumar" name="B1"></p>
</form>

</body>
</html>
<?php

function ejecutar($v1$v2$v3$operador){
   if(
$operador == "+"){
      
$valor $v1 $v2 $v3;
      return 
$valor;
   }
   if(
$operador == "-"){
      
$valor $v1 $v2 $v3;
      return 
$valor;
   }
   if(
$operador == "*"){
      
$valor $v1 $v2 $v3;
      return 
$valor;
   }
}

if(
$_POST['T1']){

   
$valor1 $_POST['T1']; 
   
$valor2 $_POST['T2']; 
   
$valor3 $_POST['T3']; 
   
$op $_POST['operador'];

   
$resultado ejecutar($valor1$valor2$valor3$op);

   echo 
$resultado;

}

?>



Saludos
Y es que a veces pienso que si no estuviera loco no podría salir adelante.
Lo que no se es capaz de dar, en realidad no se posee, uno es poseído por ello.

Senior++

Entiendo, muchas gracias, me a servido de mucho tu código.

Por cierto me esta gustando mucho este lenguaje :)
Vendo cuenta de LEAGUE OF LEGENDS lvl 30, EU west, muy barata