Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS
Desde 0 | HTML | CSS | ASP | PHP | AJAX | Javascript | Promoción de webs | Rentabilidad de webs
Directorio | Manuales | Scripts | FAQs | Programas | Artículos Copyleft | Actualidad | La Cosecha | Colabora
Registrarse | Vuestras páginas | Foros del web | Lista de correo | Boletín de novedades
Generador METAs | Compras | Busca cursos
Alojamiento | Dominios.es | Micropagos SMS | Buscadores | Patentes, marcas | Creación web | Multimedia | Videos
Desarrollo Freelance | Buscar proyectos | Buscar profesionales | Solicitar desarrollo

Redireccionar en PHP

Tengo un problema al redireccionar, coloco la instrucción en la primera línea, pero cuando la coloco en otra linea me da este error Warning: Cannot modify header information - headers already sent by (output started at C:\Servidor\web\VBX\inc\valida_session.php:5)

Por lo menos en ASP o .NET puedo redireccionar desde cualquier parte del código teniendo por ejemplo:

<%



If x = 0 then

Response.redirect(?pag0.asp?)

Elseif x = 1 then

Response.redirect(?pag1.asp?)

Elseif x = 2 then

Response.redirect(?pag2.asp?)

End if



%>


Esto también se puede hacer en PHP???

La FAQ Redireccionar en PHP tiene Pertenece a la categoría:


 Respuesta de Skunk  27/2/08 
Por supuesto que se puede. Pero ten en cuenta que a diferencia de lo que estás haciendo con ASP, en PHP mediante este método estás creando una cabecera HTTP que le dice al navegador que redireccione a otro sitio, con lo que es importante que se ejecute antes de que exista ninguna salida previa al navegador, ya sea de texto o HTML. De lo contrario, en el momento de sacar algo por pantalla se está creando una cabecera con el tipo de contenido utilizado (text/hml, text/plain, etc) y una vez que se crea una cabecera, no se puede modificar.
Y es entonces cuando recibes ese error; que te dice que no puede modificar la información de la cabecera, porque ya se ha enviado al navegador, y además te dice la línea en la que se envió esa cabecera. En fin, espero te que sirva para disipar tus dudas.

Y bueno, la traducción de tu código ASP a PHP sería algo así:

<?php
if ($x == 0):
header("Location: pag0.asp");
elseif ($x == 1):
header("Location: pag1.asp");
elseif ($x == 2):
header("Location: pag2.asp");
endif;
?>


Échale un vistazo a la sintaxis alternativa para las estructuras de control del manual oficial de PHP, dónde encontrarás diferentes formas de construirlas, ya que seguramente hay alguna (como el anterior ejemplo) que se acercan más a VB, ASP y/o a lo que estás acostumbrado.

Complementar la respuestaComplementar la respuesta
Volver al árbol de categoríasVolver al árbol de categorías

 Comentarios sin revisar
Entre los comentarios no revisados puede haber algunos interesantes que se hayan enviado recientemente.
 Se han encontrado 5 comentarios sin revisar

Ver el comentario no revisadoVer los comentarios no revisados
 
FAQ relacionadas
  + Sistema de seguridad por usuario y contraseña en PHP
  + Cómo acceder a variables globales en PHP dentro de una función?
  + PHP, variables y formularios
  + Mostrar array PHP
  + Undefined variable or Undefined index
  + Cómo quitar los guiones de un texto
  + Mostrar fecha y hora en PHP
  + Activar delimitador de código PHP <?
  + Problema con apache y PHP 5

Complementar la respuestaComplementar la respuesta
Volver al árbol de categoríasVolver al árbol de categorías

DesarrolloWeb.com | Copyright | Anunciese | Acerca de | Datos legales | Contacta | Por GuiarteMultimedia