PHP - Notice: Undefined index...

 
Vista:
Imágen de perfil de Vikttorly
Val: 6
Ha aumentado su posición en 796 puestos en PHP (en relación al último mes)
Gráfica de PHP

Notice: Undefined index...

Publicado por Vikttorly (18 intervenciones) el 09/08/2014 05:37:49
Notice: Undefined index: v1 in C:\xampp\htdocs\calculovalor\calculo.php on line 3

Notice: Undefined index: v2 in C:\xampp\htdocs\calculovalor\calculo.php on line 4

Tengo un problema y es que me aparece este error cuando envio el formulario, se que es porque segun no he especificado la variable pero es que por lo que he visto tengo mi codigo bien, a mi criterio de todas formas se los dejo aqui para que porfavor revisen y me echen una mano con esto.

HTML

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<html>
<head>
<meta charset="utf-8"/>
<title>Calculo de valor</title>
</head>
<body bgcolor="gray">
<form action="calculo.php">
<input type="text" name="v1" size="10"/>Valor 1</input>
<input type="text" name="v2" size="10"/>Valor 2</input>
<input type="submit" size="10"/>
 
</form>
</body>
</html>

PHP

1
2
3
4
5
6
7
8
9
10
<?php
 
$v1 = $_POST['v1'];
$v2 = $_POST['v2'];
 
$resultado= $v1 + $v2;
 
echo $resultado;
 
?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Notice: Undefined index...

Publicado por xve (6935 intervenciones) el 09/08/2014 08:55:51
Hola Vikttorly, no es un error, es una notificación del PHP... si por ejemplo lo desactivas del archivo php.ini, ya no aparecen estas notificaciones:

En el php.ini seria algo como:
1
error_reporting = E_ALL & ~E_STRICT & ~E_NOTICE & ~E_DEPRECATED
todos los parametros que tengan la tilde (~) delante, no se mostraran.

La otra manera desde PHP, es controlar si la variable existe con la función isset()

1
2
3
4
if(isset($_POST['v1']))
{
    $v1 = $_POST['v1'];
}

Espero que te sirva.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Vainas
Val: 34
Ha aumentado su posición en 3 puestos en PHP (en relación al último mes)
Gráfica de PHP

Notice: Undefined index...

Publicado por Vainas (262 intervenciones) el 09/08/2014 09:05:56
Buenas:

casi lo tienes. Si en el formulario no dices con que metodo lo envias (GET o POST) se envia por defecto con GET asi que no puedes recibir las variables por POST

agrega esto al form:

1
<form action="calculo.php"  method="post">

Otra cosa mas, no se que sentido tiene size en el input de tipo submit. Yo creo que no hace nada.

Ya nos diras. Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Notice: Undefined index...

Publicado por xve (6935 intervenciones) el 09/08/2014 09:14:24
jejejeje, es verdad Vainas, tienes toda la razón!!! me he liado!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Vainas
Val: 34
Ha aumentado su posición en 3 puestos en PHP (en relación al último mes)
Gráfica de PHP

Notice: Undefined index...

Publicado por Vainas (262 intervenciones) el 09/08/2014 09:44:02
Pero una explicacion nunca viene de mas

Lo de comprobar si la variable existe con isset es buena opcion.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Vikttorly
Val: 6
Ha aumentado su posición en 796 puestos en PHP (en relación al último mes)
Gráfica de PHP

Notice: Undefined index...

Publicado por Vikttorly (18 intervenciones) el 09/08/2014 17:52:26
Haha es cierto me falto el method="post", ahora si funciona hehe muchas gracias Vainas, ya me habias ayudado en otra ocacion.

Y gracias tambien a Xve por tomarse el tiempo de responder.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar