Foros del Web » Programando para Internet » PHP »

header("Location: pag.php")

Estas en el tema de header("Location: pag.php") en el foro de PHP en Foros del Web. hola gente: cuando escribo: header ("Location: pagina.php") aparece el error de abajo: Warning: Cannot modify header information - headers already sent by (output started at ...
  #1 (permalink)  
Antiguo 15/07/2005, 10:15
 
Fecha de Ingreso: julio-2005
Mensajes: 22
Antigüedad: 12 años, 5 meses
Puntos: 0
header("Location: pag.php")

hola gente:

cuando escribo:

header ("Location: pagina.php")

aparece el error de abajo:

Warning: Cannot modify header information - headers already sent by (output started at c:\wamp\www\tesdai\contrasinal.php:7) in c:\wamp\www\tesdai\contrasinal.php on line 69

Alquien podria decirme xq?
gracias
  #2 (permalink)  
Antiguo 15/07/2005, 10:23
 
Fecha de Ingreso: enero-2005
Mensajes: 34
Antigüedad: 12 años, 10 meses
Puntos: 0
Hi

Eso ocurre porque para hacer redirección... no debes de haber enviado nada a cliente. Busca en el foro por más detalles ... sobre redirección

Mr. Anderson
  #3 (permalink)  
Antiguo 15/07/2005, 10:23
Avatar de illman  
Fecha de Ingreso: mayo-2001
Mensajes: 115
Antigüedad: 16 años, 7 meses
Puntos: 0
Eso quiere decir que el script en que se ejecuta header("LOcation: pagina.php") ya has escrito algo en pantalla por ejemplo, el Header (mirate http://php.grn.es/manual/en/function.header.php ) se utiliza para mandar cabeceras HTTP al documento, por tanto si antes de esa línea has printado algo en pantalla se produce este error.

Un saludo
  #4 (permalink)  
Antiguo 15/07/2005, 10:23
Avatar de turco_7  
Fecha de Ingreso: diciembre-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.044
Antigüedad: 14 años
Puntos: 19
Tengo entendido de que el HEADER tiene ciertas restricciones, pero no se bien cuales... para solucionar esto...
reemplaza el header location por esto

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

Los \" son para escapar las comillas dobles, porque si las pones solas PHP piensa que estas cerrando la cadena.
El 2, son los segundos que va a tardar en hacer el redir, le pones lo que vos quieras y por ultimo en url= va la página a la que quieras redireccionar (acordate de poner el Refresh con la R mayuscula, sino creo que no funca).

Saludos!!!
__________________
Mi Blog http://turco7.blogspot.com
Usuario Linux : 404289
Mi última página: http://www.digitalservicecba.com.ar - Reparacion de camaras digitales!
  #5 (permalink)  
Antiguo 15/07/2005, 11:04
 
Fecha de Ingreso: julio-2005
Mensajes: 22
Antigüedad: 12 años, 5 meses
Puntos: 0
gracias por vuestra ayuda; el fallo era que tenia el php dentro de html

//el que no sabe es como el que no ve//
  #6 (permalink)  
Antiguo 28/07/2005, 12:35
 
Fecha de Ingreso: julio-2005
Mensajes: 2
Antigüedad: 12 años, 4 meses
Puntos: 0
Exclamación Urgente...................

Reciban todos un saludo de paz y bien.
Les comento que tenia el mismo problema y aqui gracias a Dios encontre la solución, el otro incombeniente que tengo es que no solo quiero redireccionar a otra pagina sino que tambien quiero mandarle el valor de ciertas variables a contininuacion muestro el codigo sencillo que tengo esperando de antemano la ayuda de todos ustedes.

procesar1.php
<?
$user;
if ($user == breiner ){
header ("Location: procesar2.php");
exit;
} else { echo "$user"; }
?>
esta pagina recibe el valor de la variable de una ella en html si el usuario es breiner yo quiero que procese la pagina procesar2.php osea que le envie tambien el valor de esa variable.

procesar2.php
<? echo "$user";
?>
Cuando el nombre es breiner redirrecciona a procesar2.php y la ejecuta pero me la muestra en blanco porque no recibe el valor.

Muchas gracias por la ayuda que me puedan brindar en la solución de este problema, Gracias.
  #7 (permalink)  
Antiguo 28/07/2005, 12:43
Avatar de yoseman  
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 14 años
Puntos: 5
Puedes usar sesiones para ello o enviarlo vía GET:
Con sesiones
Código PHP:
<?
// procesar1.php
session_start();
$_SESSION['usuario']=$user;
if (
$user == breiner ){
header ("Location: procesar2.php");
exit;
} else { echo 
"$user"; }

?>
Código PHP:
<? 
// procesar2.php
session_start();
echo 
$_SESSION['usuario'];
?>
Vía get
Código PHP:
<?
// procesar1.php
if ($user == breiner ){
header ("Location: procesar2.php?usuario=".$user);
exit;
} else { echo 
"$user"; }

?>
Código PHP:
<? 
// procesar2.php
echo $_GET['usuario'];
?>
Si es en un sistema de usuarios mejor con sesiones supongo.

Salu2 ;)
__________________
[+]
[+]
  #8 (permalink)  
Antiguo 29/07/2005, 10:31
 
Fecha de Ingreso: julio-2005
Mensajes: 2
Antigüedad: 12 años, 4 meses
Puntos: 0
sesiones.............

Muchas gracias por tu colaboracion la verdad me sirvio de mucho.....
pero como siempre lo he dicho entre mas se sabe, mas se quiere aprender no eran sesiones simplemente era pasar el valor de unas variables, y me has picado con eso de las sesiones y lo practique y me nacio una duda como hago para que un usuario no ingrese a su sesion varias veces al mismo tiempo utilizando varios computadores sino que solo le permita una sola vez, los usuarios los tengo registrados en una base de datos de mysql version 4.0.24, servidor apache 2.0.x y de php la 5.0.x con la x quiero decir que no me acuerdo de ese numero las sesiones especifico en que carpeta se guardan las sesiones y todo pero inicio sesion con el mismo usuario desde otro equipo de mi red al mismo tiempo como hago para que eso no suceda por favor no dejen que me mate la duda, estoy cabezon no se como se hace eso.

de antemano muchas gracias por las atencion de todos ustedes me puedan brindar.


__________________________________________________ _______________
la gota perfora la piedra no por su fuerza sino por su constancia.
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.
Tema Cerrado

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 00:27.