Foros del Web » Programando para Internet » PHP »

Problemas con header

Estas en el tema de Problemas con header en el foro de PHP en Foros del Web. Buen día a todos, tengo el siguiente código en mi pagina php que hace el delete de registros de una tabla: if ((isset($_GET['recordID'])) && ($_GET['recordID'] ...
  #1 (permalink)  
Antiguo 02/06/2011, 11:10
Avatar de aprendo_php  
Fecha de Ingreso: junio-2011
Mensajes: 1
Antigüedad: 12 años, 10 meses
Puntos: 0
Exclamación Problemas con header

Buen día a todos, tengo el siguiente código en mi pagina php que hace el delete de registros de una tabla:

if ((isset($_GET['recordID'])) && ($_GET['recordID'] != "")) {

$deleteSQL = sprintf("DELETE FROM iniciativa_pi WHERE id_iniciativa=%s",
GetSQLValueString($_GET['recordID'], "int"));

mysql_select_db($database_conexion, $conexion);

$deleteGoTo = "pi_mtto_inic.php";
if (isset($_SERVER['QUERY_STRING'])) {
$deleteGoTo .= (strpos($deleteGoTo, '?')) ? "&" : "?";
$deleteGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $deleteGoTo));

echo "<center>";
echo "<strong>";
$Result1 = mysql_query($deleteSQL, $conexion) or die("<FONT COLOR='#666699'>No es posible eliminar el registro. La Iniciativa tiene asociada una Actividad.</FONT><br><br><a href='pi_mtto_inic.php'><button title='Regresar'><img src='images/btn_regresar.png'></button></a>");
echo "</strong>";
echo "</center>";
}
?>

Pero mi problema está en que existen registros relacionados en otras tablas y la idea es que si está relacionado no debe borrarlo y mostrará una advertencia que me envía nuevamente a la pagina de mantenimiento:

echo "<center>";
echo "<strong>";
$Result1 = mysql_query($deleteSQL, $conexion) or die("<FONT COLOR='#666699'>No es posible eliminar el registro. La Iniciativa tiene asociada una Actividad.</FONT><br><br><a href='pi_mtto_inic.php'><button title='Regresar'><img src='images/btn_regresar.png'></button></a>");
echo "</strong>";
echo "</center>";

Esta parte de código la estaba agregando antes del header, pero mostraba un error por que se estaba enviando algo antes y no se debe hacer. Por esta razón lo he colocado después, pero si el registro que quiero eliminar tiene relación con otra tabla, simplemente no me muestra la advertencia y redirecciona a la pagina de mantenimiento y el usuario no sabe que pasó.

Podrían ayudarme por favor, les estaré muy agradecida. Estoy aprendiendo PHP con un Sistema que estoy desarrollando en mi trabajo.
  #2 (permalink)  
Antiguo 02/06/2011, 11:25
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 2 meses
Puntos: 155
Respuesta: Problemas con header

podrias poner el query que utilizas para saber que si esta relacionada la iniciativa con una actividad?
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #3 (permalink)  
Antiguo 02/06/2011, 13:51
 
Fecha de Ingreso: febrero-2010
Mensajes: 295
Antigüedad: 14 años, 2 meses
Puntos: 58
Respuesta: Problemas con header

En vez de imprimir el texto antes del header (lo que te dará error, como bien has dicho), lo puedes meter en una variable y luego pasarla con el header e imprimir el texto en la otra página. Es decir, sería:

$Result1 = mysql_query($deleteSQL, $conexion);

if (!$Result1){
$error="No es posible eliminar el registro. La Iniciativa tiene asociada una Actividad";
}

header("Location: pagina.php?error=$error");

Luego, en la otra página, recoges el texto y lo muestras:

$mensaje=$_GET["error"];
echo $mensaje;

No se si esto funcionará, no lo he probado. Puedes mirar a ver.

Etiquetas: header
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 23:21.