Foros del Web » Programando para Internet » PHP »

Notice: Undefined index: var in archivo line #

Estas en el tema de Notice: Undefined index: var in archivo line # en el foro de PHP en Foros del Web. Tengo el siguiente codigo, Código PHP: <?PHP include_once  "conn.php" ; $contacto  =  $_REQUEST [ "email" ]; $nombre    =  $_REQUEST [ "nombre" ]; $tema      =  $_REQUEST ...
  #1 (permalink)  
Antiguo 20/04/2012, 18:46
Avatar de Simon_Echecopar  
Fecha de Ingreso: marzo-2012
Mensajes: 96
Antigüedad: 12 años, 7 meses
Puntos: 0
Notice: Undefined index: var in archivo line #

Tengo el siguiente codigo,
Código PHP:
<?PHP
include_once "conn.php";

$contacto $_REQUEST["email"];
$nombre   $_REQUEST["nombre"];
$tema     $_REQUEST["tema"];
$texto    $_REQUEST["Texto"];

//echo $contacto." ".$nombre." ".$tema." ".$texto;

$query     "INSERT INTO coment VALUES (NULL, '".$nombre."', '".$contacto."', '".$tema."', '".$texto."')";
$resQuery  = @mysql_query($query);
$query1    "SELECT * FROM coment";
$resQuery1 = @mysql_query($query1);
WHILE(
$rowQuery1 = @mysql_fetch_row($resQuery1))
{
 FOR(
$i=0;$i<=4;$i++)
 {
  
//echo "<br/>".$rowQuery1[$i]."<br/>";
 
}
}
$subject   "Estimado ".$nombre.":\n Hemos recibido su comentario, dentro de las siguientes 24Hrs. nos comunicamos con usted. Si no contactactenos al Telefono 55180246 o al correo [email protected].";
@
mail($contacto,$tema,$subject,"FROM: postmaster@localhost");
?>
<script languaje="javascript1.2">
function ValidarCorreo(){
     var Email = document.myform.email.value;
     var Formato = /^([\w-\.])+@([\w-]+\.)+([a-z]){2,4}$/;
var Comparacion = Formato.test(Email);
     if(Comparacion == false){
          alert("El correo ingresado no es válido");
          return false;
     }
}
</script>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
  <title> New Document </title>
  <meta name="Generator" content="EditPlus">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
 </head>

 <body>
  <form name="myform" method="POST" id="contacto" target="_self" onSubmit="return ValidarCorreo()">
    <table>
     <tr>
      <td>Nombre
      </td>
      <td><input id="nombre" name="nombre" type="text">
      </td>
     </tr>
     <tr>
      <td>Correo Electronico
      </td>
      <td><input id="email" name="email" type="text">
      </td>
     </tr>
     <tr>
      <td>Tema
      </td>
      <td><input id="tema" name="tema" type="text">
      </td>
     </tr>
     <tr>
      <td>Comentarios
      </td>
      <td><Textarea id="Texto" name="Texto" type="text"></textarea>
      </td>
     </tr>
     <tr>
      <td colspan=2 align="right"><input id="Submit" name="Submit" type="Submit" Value="Enviar" >
      </td>
     </tr>
    </table>
  </form>
  <p>Cualquier falla o notificaciòn adicional contactarse al Telefono 55180246 o al correo [email protected]</p>
 </body>
</html>
Y al probar me sale,
Notice: Undefined index: email in C:\xampp\htdocs\AMS\Contacto.php on line 4

Notice: Undefined index: nombre in C:\xampp\htdocs\AMS\Contacto.php on line 5

Notice: Undefined index: tema in C:\xampp\htdocs\AMS\Contacto.php on line 6

Notice: Undefined index: Texto in C:\xampp\htdocs\AMS\Contacto.php on line 7

Pregunta como le quito el Notice: Undefined ...
  #2 (permalink)  
Antiguo 20/04/2012, 18:52
Avatar de unreal4u  
Fecha de Ingreso: octubre-2008
Mensajes: 72
Antigüedad: 16 años
Puntos: 10
Respuesta: Notice: Undefined index: var in archivo line #

la forma correcta sería primero preguntar si existe:

Código PHP:
if (isset($_REQUEST['email'])) {
  
$contacto $_REQUEST["email"];

La forma incorrecta, cochina, apurada y mala práctica sería no mostrar los errores, valor que se establece en php.ini, o en runtime con
Código PHP:
error_reporting(0);
ini_set('display_errors','Off'); 
Saludos.

Etiquetas: html, index, line, mysql, notice, undefined, var
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:04.