39076 visitas 10 respuestas

Mostrar mensaje y redireccionar

Hola, trato de hacer los siguiente:

quiero que se me muestre el mensaje en la pantalla durante un cierto tiempo y luego redireccionar.

He probado con sleep(5) pero el mensaje no sellega a mostrar en la pantalla sino que la ejecucion se detiene 5 segundo y redirecciona

alguna idea???

if($result)
{
     echo "<div class=\"info\">Ha abandonado la sesi&oacute;n<br /></div>";
     sleep(5)
          header ("Location: http://localhost/index.php");

}

por Visent desde España

Registrado desde: 24 May 05

Respuestas

Ese codigo estaria mal, no puedes enviar un echo y despues un header, ke se escojona la cosa y no funciona. Prueba a poner primero el siguiente header y despues el resto...

<?php
 header("Refresh: X; URL=http://ohycu.net");
?>

... y donde pone "X" pones el numero de segundos que quieres que se espere.

0

por yosolito desde España

Registrado desde: 11 Jul 03

Resulta que si tu pones la función ob_start() antes de nada y la función ob_end_flush() al final del codigopuedes poner todos los echo que quieras antes de un header.

0

por Visent desde España

Registrado desde: 24 May 05

no puedes enviar cabeceras header después de mandar html. si quieres redireccionar después de un tiempo usa javascript.

 setTimeout("location.href=\'url\'",5000)
0

por infinit desde España

Registrado desde: 09 Feb 04

gracias por vuestros comentarios . Os cuento:

La opcion de javascript no me interesa pq kiero una aplicacion libre de javascript. He probado el header pero no me va.

Alguna idea mas?????

0

por Visent desde España

Registrado desde: 24 May 05

Mete un meta tag en el header que redireccione a los 5 segundos :S algo como:

Y listo

1

por Arias desde España

Registrado desde: 15 Apr 03

Tengo un problema similar el mio es un envió de email. Mi formulario de email al final me manda un mensaje y lo que quiero es que me lo redireccione. Este es el código:

   echo "El mensaje ha sido enviado!<BR>";
   echo "Gracias por su mensage. Nos comunicaremos lo mas pronto posible.<BR>";
   echo "Regresar a <A HREF="javascript:history.back()">Contacto</A>.<BR>";
   echo "<A HREF="http://www.ejemplo.com">INICIO</A>.<BR>";

Como verán le he puesto un link para regresar y otro para ir a inicio pero como les avía comentado quiero una redireccion. Espero y me puedan ayudar, saludos.

Una cosa mas este mensaje/codigo es resultado de cuando valido los campos obligatorios.

0

por DragonXP desde México

Registrado desde: 26 May 06

Comentario a parte: intenten usar algo de templates para no tener tanto echo y tanto html metido en el PHP...

0

por MijT desde Argentina

Registrado desde: 05 Jul 02

me sirvio el

<meta http-equiv="refresh" content="5; url=http://miurl.com/" />

Muy bueno Grax

0

por maRkOpOlo^ desde México

Registrado desde: 17 Jul 07

gracias por vuestros comentarios .

Os cuento:

La opcion de javascript no me interesa pq kiero una aplicacion libre de javascript. He probado el header pero no me va.

Alguna idea mas?????

bueno yo hice lo siguiente:

coloque dentro de redireccion.html :

<head>
 <meta http-equiv="Refresh" content="3 ; URL=redir.php">
 </head>
 <body>
    ... el mensaje que quieras...
 </body>

y dentro del redir.php :

<?php
  $pagina = "http://www.tupagina.com";
  Header("Location: $pagina"); 
 ?>
0

por ronixp desde Perú

Registrado desde: 04 Jun 08

trata con lo siguiente, a mi me funciono

 print "<script>alert('$mensaje')</script>";
 print("<script>window.location.replace('pagina donde redireccionar');</script>"); 

debes crear una variable $mensaje, al interior de tu archivo php, lo que hace es llamar a un mensaje y luego de presionar aceptar se ejecutala redireccion.

esto debes agregarlo luego de finalizar las instrucciones al interior de tu php.

Espero que te siurva, nos vemos.

0

por ryel desde Chile

Registrado desde: 19 Jan 10

o busca en nuestros foros