Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PHP (https://www.clubdelphi.com/foros/forumdisplay.php?f=15)
-   -   Como direccionar a una pagina en un periodo de tiempo (https://www.clubdelphi.com/foros/showthread.php?t=31085)

Shidalis 27-04-2006 14:53:28

Como direccionar a una pagina en un periodo de tiempo
 
Hola a todos.
Mi duda ahora en como puedo hacer para direccionar a la pagina solicitante durante un periodo determinado.
Les comento un ejemplo de lo que quiero hacer tengo varias paginas que llaman a una sola pagina quiero que esta pagina redirecciones a cualquiera de las otras paginas que la solicito en un periodo de tiempo determinado.
Si pueden ayudarme les agradesco enormemente

chrids506 27-04-2006 17:12:29

Redireccionar
 
Este código es html, pero espero que te sirva.
Content = el numero de segundos a esperar antes de redireccionar.
Además muestra un bonito Cargando como gmail.

Código:

<html>
<head>
<title>Cargando...</title>
<META HTTP-EQUIV="Refresh" CONTENT="5; URL=http://www.rinconcitodelphi.com/">
<style type="text/css">
<!--
.style1 {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: bold;
}
-->
</style>
</head>
<body>
<span class="style1">Cargando...
</span>
</body>
</html>


chrids506 27-04-2006 17:29:22

Por que?
 
¿No te funciona?

Shidalis 27-04-2006 18:30:47

si me sirve el codigo muchas gracias, pero como hago para tomar la url anterior, es decir, la que invoco a esa pagina; y disculpa mi ignorancia

chrids506 27-04-2006 18:44:43

A ver si sirve
 
Cita:

¿No te funciona?
Esto no te lo puse a tí, se lo puse a kayetano que puso esto:
Cita:

Respuesta de..: kayetano
Título....:...: Como direccionar a una pagina en un periodo de tiempo
Foro..........: PHP

URL...........: http://www.clubdelphi.com/foros/show...5&goto=newpost


=============== R E S P U E S T A ============================

Hola

Algo asin ??

...
<head>
<META HTTP-EQUIV="Refresh" CONTENT="3;URL=mipagina.html">
</head>
...
=============== F I N A L R E S P U E S T A ==========
pero luego el mensaje desapareció.

Al punto:
Yo diría que con esto:
Código:

<META HTTP-EQUIV="Refresh" CONTENT="0; URL="history.go(-1)">
A ver si te sirve.

Editado, por que puse 1 en lugar de -1

Shidalis 27-04-2006 19:20:02

disculpa la molestia pero coloque el codigo como me dijiste y se que queda como en un loop se redirige a la misma pagina a cada vez, que hago?

chrids506 27-04-2006 19:44:36

Disculpa
 
Disculpa, pero no se me ocurre nada.

kayetano 27-04-2006 20:18:41

Hola
Cita:

Empezado por chrids506
Esto no te lo puse a tí, se lo puse a kayetano que puso esto:

Perdona, le estaba contestando a Shidalis, pero desde que he leido el post hasta que he contestado han pasado 14 minutos y cuando he visto el hilo ya habías contestado tu y he preferido borrar mi post.

Cita:

Empezado por Shidalis
<META HTTP-EQUIV="Refresh" CONTENT="0; URL="history.go(-1)">

nose hasta donde puede fucionar javascript dentro de un meta, como poco debería ser "javascript:history.back()" pero esto tampoco funciona. De todas formas esto no recarga la página anterior sino que carga la cache del navegador.

Si es un popup lo que se esta abriendo puedes utilizar el objeto "window.opener".

Otra opción es pasarlo como parametro, por ejemplo:
Código PHP:

  <a href="mipagina.html?reload=anterior.html">...</a

con esto y con PHP o javascript puedes obtener el valor de la página anterior y recargarla.

Para realizar un proceso pasado un tiempo con javascript puedes utilizar la funcion "setTimeout", por ejemplo
Código PHP:

settimeout"document.location.href="+mipagina3000 ); 


chrids506 27-04-2006 20:28:29

Gracias.
 
Cita:

Perdona, le estaba contestando a Shidalis, pero desde que he leido el post hasta que he contestado han pasado 14 minutos y cuando he visto el hilo ya habías contestado tu y he preferido borrar mi post.
ahh

Cita:

nose hasta donde puede fucionar javascript dentro de un meta, como poco debería ser "javascript:history.back()"
Lo intenté

Cita:

De todas formas esto no recarga la página anterior sino que carga la cache del navegador.
Totalmente de acuerdo.

Saludos, Chrids.

Shidalis 27-04-2006 21:05:19

muchas gracias por sus comentarios pero si uso el settimeout() tambien deberia saber cual fue la url anterior osea la url que llamo a esa pagina que esta en ejecucion.
otra cosa consegui este codigo pero no se para que sirve si pueden ayudarme puede que este codigo me sirva para redireccionar la pagina:
Código:

<!-- no cache headers -->
 <meta http-equiv="Pragma" content="no-cache" />
 <meta http-equiv="Expires" content="-1" />
 <meta http-equiv="Cache-Control" content="no-cache" />
 <!-- end no cache headers -->
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />


dec 27-04-2006 21:52:26

Hola,

Para saber la página desde la que se llega a una cualquiera parece que puede utilizarse lo siguiente:

Código PHP:

<?php

  $ref 
$_SERVER['HTTP_REFERER']; 
  
  echo 
"Llegaste desde: $ref"
  
?>

Sin embargo, no parece que ello deba utilizarse para según qué casos, como muestran algunos resultados de esta búsqueda en Google.

Respecto del código que muestras en tu último mensaje,... parece que lo que trata de conseguir por todos los medios posibles es que la página en cuestión no se almacene en el caché del navegador.

Podría utilizarse también la cabecera HTTP en PHP, tal que así:

Código PHP:

<?php
  header
("Cache-Control: no-cache, must-revalidate");
?>

Sin embargo tendrías que hacer alguna que otra prueba, puesto que es posible que no obtuvieras los resultados esperados en ciertos navegadores... qué sé yo. Toca investigar. ;)

Shidalis 27-04-2006 22:51:09

gracias por ayudarme ya encontr la solucion hice lo siguiente

Código:

<?php
  $ref = $_SERVER['HTTP_REFERER']; 
?>
<script LANGUAGE="JavaScript">
var pagina="<?php echo $ref; ?>"
function redireccionar()
{
location.href=pagina
}
setTimeout ("redireccionar()", 4000);
</script>


roman 27-04-2006 23:10:51

Cita:

Empezado por dec
Sin embargo, no parece que ello deba utilizarse para según qué casos

De hecho, el mismo manual de PHP advierte contra su uso:

Cita:

The address of the page (if any) which referred the user agent to the current page. This is set by the user agent. Not all user agents will set this, and some provide the ability to modify HTTP_REFERER as a feature. In short, it cannot really be trusted.
// Saludos

kayetano 28-04-2006 12:17:04

Hola

Cosas de la vida ni me habia percatado que estabamos en PHP pensaba que era un hila de HTML.
Shidalis no te compliques la vida:
Código PHP:

<META HTTP-EQUIV="Refresh" CONTENT="3; URL="<?=$_SERVER['HTTP_REFERER']?>">


roman 28-04-2006 17:16:40

Creo que no está de más enfatizar, con respecto al uso de HTTP_REFERER:

In short, it cannot really be trusted

// Saludos

kayetano 28-04-2006 19:23:33

Hola

Otra opcion
archivo a.php
Código PHP:

...
<a href="b.php?redir=<?=urlencodebasename$_SERVER['PHP_SELF'] ) ) ?>">mi pagina</a>
...


archivo b.php
Código PHP:

...
<head>
<META HTTP-EQUIV="Refresh" CONTENT="3; URL="<?=urldecode$_GET['redir'] )?>">
</head
...



La franja horaria es GMT +2. Ahora son las 04:40:33.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi