Foros del Web » Programando para Internet » PHP »

Problemas con el header(Location: )

Estas en el tema de Problemas con el header(Location: ) en el foro de PHP en Foros del Web. Hola amigos, tengo un problema que me tiene trasnochado... jeje... tengo una pagina que hace validacion sobre si misma... claro hago un bloque if pregunto ...
  #1 (permalink)  
Antiguo 02/08/2005, 23:34
Avatar de Dr.Guindows  
Fecha de Ingreso: enero-2004
Mensajes: 77
Antigüedad: 20 años, 2 meses
Puntos: 0
Problemas con el header(Location: )

Hola amigos, tengo un problema que me tiene trasnochado... jeje... tengo una pagina que hace validacion sobre si misma... claro hago un bloque if pregunto si esta setiada una variable y de ser asi entro en un bloque if que al final redirecciono, necesito hacerlo con un header ya que necesito que la session continue, ok el problema es el siguiente.... el header(Location: my URI) no funciona y no tengo la minima idea... :(:(:(:( explicame cuales son las restricciones o si tengoq que poner algun otra cabezera...

include('head.php'); -- esta pagina no contiene informacion de cabezeras (<head>)
require("aut_verifica.inc.php"); -- esta tampoco
if(isset($_POST['proveedor'])) {

$dbj = conectar();
$exist = confir_prov($dbj, $_POST['proveedor']);
echo $exist;
desconectar($dbj);
if($exist == 1) {
$_SESSION['proveedor'] = $_POST['proveedor'];

header ("Location: ing_prod.php");
}
}else{
$_SESSION['farma'] = $_POST['List'];
}
... aqui contina el codigo con un formulario que devuelve el $_POST['proveedor']

a ver que soluciones me dan.... no puedo usar META

Gracias de Antemano

  #2 (permalink)  
Antiguo 03/08/2005, 01:24
Avatar de DvD AdN  
Fecha de Ingreso: mayo-2005
Ubicación: Frente al monitor
Mensajes: 610
Antigüedad: 18 años, 11 meses
Puntos: 0
El header(); no funciona si ya se envio algo al cliente y creo que no funciona con direcciones relativas.

Saludos
__________________
Keep f***ing learning
Ask for f***ing help.
Use f***ing spell check.
Think about all the f***ing possibilities.
  #3 (permalink)  
Antiguo 03/08/2005, 03:20
 
Fecha de Ingreso: abril-2005
Ubicación: zürich, la rica suiza
Mensajes: 212
Antigüedad: 19 años
Puntos: 2
tenia el mismo problema, lo que yo hice y lo saque de este foro fue colocar en vez del header esta linea

print "<meta http-equiv=Refresh content=\"0 ; url=tupagina.php\">";

entonces te redirecciona a los 0 segundos a la pagina que deseas. a mi me va muy bien
suerte
  #4 (permalink)  
Antiguo 03/08/2005, 03:27
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
No te ha de funcionar por el echo $exist que tienes líneas arriba...

Te aconsejo utilizes las etiquetas para iluminar tu código: http://forosdelweb.com/misc.php?do=bbcode#code
además que leas las recomendaciones para hacer consultas en este foro: http://www.forosdelweb.com/f18/como-preguntar-foro-php-cosas-tener-cuenta-295415/
en este caso... no mencionas --exáctamente-- qué error tienes (un "no me funciona" no dice mucho).

Un saludo!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #5 (permalink)  
Antiguo 03/08/2005, 10:06
Avatar de Dr.Guindows  
Fecha de Ingreso: enero-2004
Mensajes: 77
Antigüedad: 20 años, 2 meses
Puntos: 0
Cita:
Iniciado por jam1138
No te ha de funcionar por el echo $exist que tienes líneas arriba...

Te aconsejo utilizes las etiquetas para iluminar tu código: http://forosdelweb.com/misc.php?do=bbcode#code
además que leas las recomendaciones para hacer consultas en este foro: http://www.forosdelweb.com/showthread.php?t=295415
en este caso... no mencionas --exáctamente-- qué error tienes (un "no me funciona" no dice mucho).

Un saludo!
No lo creo que sea por el echo $exist porque eso lo puse cuando no me funciono y disculpenme pero el error que arroja es el siguiente:
You can´t modify yor header information, header already send... o algo asi... QUE PUEDO HACER

[CITA]tenia el mismo problema, lo que yo hice y lo saque de este foro fue colocar en vez del header esta linea

print "<meta http-equiv=Refresh content=\"0 ; url=tupagina.php\">";
[/CITA]

No puedo usar META ya que tengo un codigo de autentificacion que trabaja por session... al usar el meta es como si entrara de otra pagina.... :( Gracias...
  #6 (permalink)  
Antiguo 03/08/2005, 10:09
 
Fecha de Ingreso: junio-2005
Mensajes: 343
Antigüedad: 18 años, 10 meses
Puntos: 10
Xq no usas la función redirect() de javascript ???

Poniendo echo'decalaracion de la funcion' .'ejecutar funcion';
  #7 (permalink)  
Antiguo 03/08/2005, 10:21
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 22 años, 2 meses
Puntos: 45
Hola Dr.Guindows
Ese errror se da por tener salidas Html o espacios en blanco, aqui en el foro ya se discutio eso y usando el buscador lo pudes encontrar.
Otra manera de hacerlo (no es tan elegante), que al principio de la página, antes que coloques algun script, pongas ob_start(); y al fina coloques tu header:
header ("Location: tu_sitio");
ob_end_flush();
saludos!
  #8 (permalink)  
Antiguo 03/08/2005, 10:41
Avatar de maralbust  
Fecha de Ingreso: febrero-2004
Ubicación: Santiago
Mensajes: 578
Antigüedad: 20 años, 2 meses
Puntos: 0
estoy de acuerdo con jam1138m ya que php interpreta como header un echo.


salcalo y saca toda etiqueta html y veras que si


saludis
__________________
..:: NADA SE PIERDE SOLO SE TRANSFORMA ::..
  #9 (permalink)  
Antiguo 03/08/2005, 14:18
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Cita:
Iniciado por Dr.Guindows
el error que arroja es el siguiente:
You can´t modify yor header information, header already send...
Tienes un echo() por ahí... Asegurate de no mandar NADA a imprimir; mencionas no mandas etiquetas HTML ni METAS... pero igual aplica a cualquier cosa...

Respecto a las funciones ob_start() y ob_end_flush()... no son una solución como tal, más bien, es "un truco"... pero el error persistirá. En todo caso si es necesario imprimir algo (sea lo que sea) mejor opta por una opción JavaScript ó un META de redireccionamiento...

Un saludo!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
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 16:47.