Foros del Web » Programando para Internet » PHP »

otro problem de redireccion [SOLO JS??]

Estas en el tema de otro problem de redireccion [SOLO JS??] en el foro de PHP en Foros del Web. hola. Tengo una web con 3 partes: cabecera, menu y contenido las que llamo con include en una web "maestra" que es siempre la misma ...
  #1 (permalink)  
Antiguo 27/02/2010, 22:42
Avatar de killerangel  
Fecha de Ingreso: septiembre-2007
Ubicación: Un punto en el espacio
Mensajes: 592
Antigüedad: 16 años, 7 meses
Puntos: 10
Exclamación otro problem de redireccion [SOLO JS??]

hola.

Tengo una web con 3 partes: cabecera, menu y contenido las que llamo con include en una web "maestra" que es siempre la misma y no cambia de nombre sino solo de parametros url.

La cabecera es la misma para todas (obviamente) y dependiendo de las opciones del menu cambia el contenido.

1- imaginemos q en el contenido hay una pagina1.php que tiene un formulario con una caja de texto y se envia a otra pagina2.php, el action del form es index.php?pagina=pagina2

2 - el parametro pagina carga el contenido del cuerpo segun sea el caso del valor que almacena.

3 - entonces carga y muestra la cabecera, carga y muestra el menu, y ahora carga el cuerpo AQUI EL PROBLEMA!!!

4 - si en pagina2.php tengo algo asi
if($_GET['texto']==3) //cargar en el contenido la pagina3.php
header('Location index.php?pagina=pagina3');
elseif($_GET['texto']==4) //cargar en el contenido la pagina3.php
header('Location index.php?pagina=pagina4');

COMO SABEMOS ESTO NO FUNCIONA ya que header no puede redireccionar por q ya se mostro o creo parte de la pagina al escribir los 'echo's en el header y el menu...

que puedo hacer para estos casos?

se me ocurre usar javascript y su location pero no kisiera depender del maravilloso javascript para estos casos... acaso no hay otra manera de hacerlo???

gracias hhhhoooooo guruuueeeessss......
__________________
Sueñen... y trabajen por hacer esos sueños realidad... de eso se construye el futuro!!
Me siento entre la ASP-ada y la PHP-red
  #2 (permalink)  
Antiguo 28/02/2010, 05:58
Avatar de cemansilla  
Fecha de Ingreso: septiembre-2007
Ubicación: Buenos Aires, Argentina, Argentina
Mensajes: 214
Antigüedad: 16 años, 7 meses
Puntos: 6
Respuesta: otro problem de redireccion [SOLO JS??]

Si no querés usar Javascript podés ir almacenando en el buffer el contenido en lugar de mostrarlo y luego de todas las validaciones enviarlo al navegador:

Código PHP:
<?
ob_start
() 

// genero contenido

$contenido ob_get_contents();

ob_end_clean();

echo 
$contenido;
?>
Ó

Código PHP:
<?
ob_start
() 

// genero contenido

ob_end_flush();
?>
Saludos!
__________________
CÉSAR MANSILLA
Web & Mobile Developer - Analista - Creativo - Curioso
http://cesarmansilla.com/
http://cesarmansilla.com/blog/
  #3 (permalink)  
Antiguo 28/02/2010, 07:15
Avatar de genuine_carlosV2  
Fecha de Ingreso: noviembre-2008
Ubicación: 127.0.0.1
Mensajes: 296
Antigüedad: 15 años, 5 meses
Puntos: 6
Respuesta: otro problem de redireccion [SOLO JS??]

Haz una pre-comprobación al inicio del todo.

Código PHP:
<?php
if($_GET['texto']==3//cargar en el contenido la pagina3.php
header('Location index.php?pagina=pagina3');
elseif(
$_GET['texto']==4//cargar en el contenido la pagina3.php
header('Location index.php?pagina=pagina4');
?>
Todo lo que tenias hasta ahora
Saludos
__________________
Carlos

Recoger datos es solo el primer paso hacia la sabiduría. Pero compartir información es el primer paso hacia la comunidad. - IBM
  #4 (permalink)  
Antiguo 28/02/2010, 07:19
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Respuesta: otro problem de redireccion [SOLO JS??]

Claro, si le haces un redirect no necesitas ningún html antes. De hecho no se va a ver. Entonces haz todos los header ( location ) arriba de todo.

Saludos.
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #5 (permalink)  
Antiguo 28/02/2010, 12:32
Avatar de killerangel  
Fecha de Ingreso: septiembre-2007
Ubicación: Un punto en el espacio
Mensajes: 592
Antigüedad: 16 años, 7 meses
Puntos: 10
Respuesta: otro problem de redireccion [SOLO JS??]

genuine_carlosV2 y CHuLoSoY, lo que pasa es que antes del header está el contenido de la web que se imprime.

Lo que comenta cemansilla lo voy a probar aunque aun no capto bien la idea.

a ver si me explican un poco mejor de que se trata, pero funciona si antes de ob_start() hay contenido para mostrar, como si llamo a una web que tiene algunos echo's?

gracias
__________________
Sueñen... y trabajen por hacer esos sueños realidad... de eso se construye el futuro!!
Me siento entre la ASP-ada y la PHP-red
  #6 (permalink)  
Antiguo 28/02/2010, 16:13
Avatar de genuine_carlosV2  
Fecha de Ingreso: noviembre-2008
Ubicación: 127.0.0.1
Mensajes: 296
Antigüedad: 15 años, 5 meses
Puntos: 6
Respuesta: otro problem de redireccion [SOLO JS??]

Mira: ob_start()

Si lo único que quieres es esto que nos pides, te recomiendo ob_start(). Realmente te quita problemas de cabeza.

Igualmente, si quieres hacer como te dije, tan solo tienes que hacer las comprobaciones que quieras antes de cargar la página. De este modo, además, te aseguras que llegados al punto conflictivo, no debas hacer verificaciones porqué son ciertas.

Saludos
__________________
Carlos

Recoger datos es solo el primer paso hacia la sabiduría. Pero compartir información es el primer paso hacia la comunidad. - IBM

Etiquetas: js, redireccionar
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:39.