Foros del Web » Programando para Internet » PHP »

como puedo redireccionar...

Estas en el tema de como puedo redireccionar... en el foro de PHP en Foros del Web. Bueno tengo una duda espero que me la resuelvan, que instrucciones puedo utilizar para poder redireccionar a una pagina en php....
  #1 (permalink)  
Antiguo 30/05/2006, 13:36
 
Fecha de Ingreso: abril-2006
Ubicación: mexico
Mensajes: 287
Antigüedad: 18 años, 7 meses
Puntos: 2
como puedo redireccionar...

Bueno tengo una duda espero que me la resuelvan, que instrucciones puedo utilizar para poder redireccionar a una pagina en php.
  #2 (permalink)  
Antiguo 30/05/2006, 13:41
Avatar de turco_7  
Fecha de Ingreso: diciembre-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.044
Antigüedad: 20 años, 11 meses
Puntos: 19
podrias hacerlo con header()
Código PHP:
header("location: tupagina.php"); 
__________________
Mi Blog http://turco7.blogspot.com
Usuario Linux : 404289
Mi última página: http://www.digitalservicecba.com.ar - Reparacion de camaras digitales!
  #3 (permalink)  
Antiguo 30/05/2006, 14:13
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 21 años, 10 meses
Puntos: 9
siempre y cuando no hays mostrado ninguna salida, es decir no muestras html primero....

sino tenes q usar JS
  #4 (permalink)  
Antiguo 31/05/2006, 00:18
Avatar de chalchis  
Fecha de Ingreso: julio-2003
Mensajes: 1.773
Antigüedad: 21 años, 4 meses
Puntos: 21
Sonrisa tambien usando

echo '<script>';
echo 'window.location="pagina.php"';
echo '</script>';

saludos
__________________
gerardo
  #5 (permalink)  
Antiguo 31/05/2006, 02:01
 
Fecha de Ingreso: diciembre-2004
Mensajes: 721
Antigüedad: 19 años, 10 meses
Puntos: 2
Hola, yo lo uso mucho para redireccionar a páginas de error... lo uso asi:

Código PHP:

session_write_close
();
header("Location: /error_msgs/seccion/error_numero.php");
exit(); 
linea1: cuando hagas un redireccionamiento, si tenes una session abierta (session_start()) necesitas utilizar session_write_close(); sino no te va a guardar los cambios en las variables de session. No te olvides de esto por que te va a dar muchisimos dolores de cabeza y no te vas a dar la más minima idea de por que ocurren ciertos errores. CLARO, sino hiciste cambios en las variables de session no es necesario.
Otra nota, si el redireccionamiento es para forzar un download de archivo, tengas o no tengas cambios en variables de session, ponelo igual sino no te va a dejar navegar tu sitio hasta q el download termine... esto me dio a mi un dolor de cabeza de 1 semana :)

la 2da linea redirecciona

la 3ra linea cierra el script. Por más que hagas un redireccionamiento si no pones un EXIT(); el resto del script sigue corriendo... y supongamos lo siguiente:

Controlas errores asi:

Código PHP:

// Controlo errores
$error 0;

if (
$user == 'hacker') {
   
$error 1;
}

if (
$_GET['clave'] != '123456') {
   
$error 2;
}

// ¿que paso?

if ($error == 1) {
    
header("Location: /errores/hackers.php");
    exit();

} else if (
$error == 2) {
   
header("Location: /errores/clave_falsa.php");
   exit();

}

borrar_todo_el_disco_rigido(); 
Suponete que cae en "$error = 1", lo redireccionas pero igualmente el script sigue corriendo y llega a la funcion borrar_todo_el_disco_rigido();

Obviamente, usarias en este caso otra linea else if para saber si $error == 0, y recien ahi ejecutarias la funcion... pero hay casos en los que eso no lo vas a poder hacer.

Bueno espero sirva de ayuda, un saludo.
  #6 (permalink)  
Antiguo 31/05/2006, 02:02
 
Fecha de Ingreso: diciembre-2004
Mensajes: 721
Antigüedad: 19 años, 10 meses
Puntos: 2
Ah otra cosa, ojo con los redireccionamientos de javascript por que algunos search engines no los siguen (google, por ejemplo)
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 21:22.