Foros del Web » Programando para Internet » PHP »

¿A que se deben estos warning ?

Estas en el tema de ¿A que se deben estos warning ? en el foro de PHP en Foros del Web. Estoy haciendo un formulario de altas y bajas en dreamweaver 8 utlizando mysql, si funciona correctamente el formulario y todo, pero me arroja los siguientes ...
  #1 (permalink)  
Antiguo 06/07/2011, 20:08
 
Fecha de Ingreso: junio-2011
Mensajes: 12
Antigüedad: 9 años
Puntos: 0
¿A que se deben estos warning ?

Estoy haciendo un formulario de altas y bajas en dreamweaver 8 utlizando mysql, si funciona correctamente el formulario y todo, pero me arroja los siguientes warning al momento de abrir el vinculo de consulta:

Notice: Undefined index: borrar in C:\xampp\htdocs\modulo5_folder\consultar… on line 9

Notice: Undefined index: editar in C:\xampp\htdocs\modulo5_folder\consultar… on line 40
Notice: Undefined index: editar in C:\xampp\htdocs\modulo5_folder\consultar… on line 40

Este es el codigo de la pagina "consulta"

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-…
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin título</title>
</head>
<?php
include("conectar.php");
if ($_GET["borrar"]==true)
{
$query= "DELETE FROM usuarios WHERE id='".$_GET["id"]."'";
mysql_query($query);
}
?>

<body>
<form id="forma1" name="forma1" action="editar.php" method="post"/>

<center>
<table>
<thead>
<tr>
<th> Nombre</th>
<th> Apellidos</th>
<th> Telefono</th>
<th></th>
<th> <a href="index.html">Menu</a></th>
</tr>
</thead>
<tbody>
<?php
$query= "SELECT * FROM usuarios";
$res = mysql_query($query);

if($res)
{
while($filas =mysql_fetch_assoc($res))
{
$id =$filas ["id"];
if($_GET["editar"]==true&&$id==$_GET[…
{

?>

<tr>

<td><input type="text" name="nombre" id="nombre" value="<?php echo $filas["nombre"]?>" /></td>
<td><input type="text" name="apellidos" id="apellidos" value="<?php echo $filas["apellidos"]?>" /></td>
<td><input type="text" name="telefono" id="telefono" value="<?php echo $filas["telefono"]?>" /></td>
<td><input type="submit" value="Aceptar" /></td>
<input type="hidden" name="id" value="<?php echo $id ?>" />
<td><a href="consultar.php">Cancelar</a></td>

</tr>
<?php
}
else
{

?>
<tr>

<td><?php echo $filas["nombre"]?></td>
<td><?php echo $filas["apellidos"]?></td>
<td><?php echo $filas["telefono"]?></td>
<td><a href="consultar.php?editar=true&id=<?php echo $id?>" >Editar </a></td>
<td><a href="consultar.php?borrar=true&id=<?php echo $id?>" >Borrar </a></td>

</tr>

<?php
}

}

}

?>
</table>
</center>

</body>
</html>


[IMG][URL=http://imageshack.us/photo/my-images/849/15846022.png/][IMG]http://img849.imageshack.us/img849/5610/15846022.png[/IMG][/URL][/IMG]

[IMG][URL=http://imageshack.us/photo/my-images/824/95759449.png/][IMG]http://img824.imageshack.us/img824/6114/95759449.png[/IMG][/URL][/IMG]

[IMG][URL=http://imageshack.us/photo/my-images/696/62187142.png/][IMG]http://img696.imageshack.us/img696/4900/62187142.png[/IMG][/URL][/IMG]


Cabe aclarar que ya intente declarar las lineas 9 y 40 con comillas dobles (" ") y comillas simples (' ') y nada
  #2 (permalink)  
Antiguo 06/07/2011, 20:17
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 11 años, 2 meses
Puntos: 322
Respuesta: ¿A que se deben estos warning ?

De verdad no entiendes? Al menos intentaste investigar?
Bueno, te lo traduzco:
Undefined = Indefinido
Index = Índice
Undefined index = Índice indefinido

Ya te suena? Bueno, te lo tendré que explicar...
El error dice que no se puede acceder a tal índice del array $_GET simplemente porque no existe, y analizando lo que hace GET, descubrimos que en la URL no le estás pasando el valor de borrar. Qué hacer para solucionarlo? Primero es comprobar su existencia y asignarle un valor....
Código PHP:
if (!isset($_GET["borrar"])) {
    
$_GET["borrar"] = false;
}

// Más facil, con operador ternario
$_GET["borrar"] = (isset($_GET["borrar"])) ? $_GET["borrar"] : false
Ahora hazlo con lo demás.
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #3 (permalink)  
Antiguo 06/07/2011, 20:20
Avatar de Sotelio  
Fecha de Ingreso: mayo-2011
Ubicación: Santiago de Chile
Mensajes: 68
Antigüedad: 9 años, 2 meses
Puntos: 21
Respuesta: A que se deben estos warning ?

no son warnings, son notices, aparecen porque supones que siempre existen los $_get borrar y los otros, y no es asÃ*.

Tienes dos opciones, desactivar en tu servidor los notices o (mejor) evaluar asÃ*:

if (!empty($_get borrar) && .. la otra condición )

Saludos
  #4 (permalink)  
Antiguo 06/07/2011, 21:15
 
Fecha de Ingreso: junio-2011
Mensajes: 12
Antigüedad: 9 años
Puntos: 0
Respuesta: A que se deben estos warning ?

Cita:
Iniciado por Sotelio Ver Mensaje
no son warnings, son notices, aparecen porque supones que siempre existen los $_get borrar y los otros, y no es asÃ*.

Tienes dos opciones, desactivar en tu servidor los notices o (mejor) evaluar asÃ*:

if (!empty($_get borrar) && .. la otra condición )

Saludos
Muchisimas Gracias amigo, hice lo que me dijiste y se soluciono el problema

Gracias de nuevo !!!

Etiquetas: html, mysql, warning, formulario
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 09:41.