PHP - Notice: Undefined index...

   
Vista:
Imágen de perfil de Vikttorly

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

Notice: Undefined index...

Publicado por xve (5522 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

Notice: Undefined index...

Publicado por Vainas (254 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

Notice: Undefined index...

Publicado por xve (5522 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

Notice: Undefined index...

Publicado por Vainas (254 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

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