Foros del Web » Programando para Internet » PHP »

redireccion con espera?

Estas en el tema de redireccion con espera? en el foro de PHP en Foros del Web. hola, queria saber como hago para que un header("location xxx.com") espere un timpo antes de redireccionar, pero mostrando un mensaje (si se puede, si no, ...
  #1 (permalink)  
Antiguo 10/05/2003, 08:54
Avatar de m_sassa  
Fecha de Ingreso: noviembre-2002
Ubicación: Rio Cuarto - Córdoba - Argentina
Mensajes: 299
Antigüedad: 22 años
Puntos: 0
redireccion con espera?

hola, queria saber como hago para que un header("location xxx.com") espere un timpo antes de redireccionar, pero mostrando un mensaje (si se puede, si no, no)

algo asi como hace este foro cuando posteas un mensaje...

gracias
__________________
"El paisano es la persona que lleva el paisaje en el alma"
Atahualpa Yupanqui
  #2 (permalink)  
Antiguo 10/05/2003, 10:16
Avatar de camargo  
Fecha de Ingreso: abril-2002
Ubicación: Kerétaro, Méjiko
Mensajes: 1.045
Antigüedad: 22 años, 7 meses
Puntos: 2
me temo q solo lo podras hacer con javascript
__________________
http://www.chorcha.com
  #3 (permalink)  
Antiguo 10/05/2003, 10:43
Avatar de m_sassa  
Fecha de Ingreso: noviembre-2002
Ubicación: Rio Cuarto - Córdoba - Argentina
Mensajes: 299
Antigüedad: 22 años
Puntos: 0
ok gracias
__________________
"El paisano es la persona que lleva el paisaje en el alma"
Atahualpa Yupanqui
  #4 (permalink)  
Antiguo 10/05/2003, 12:26
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Con etiquetas META de refresh ... (en el foro HTML te orientaran ..). También se puede hacer con Javascript (en tal caso .. al foro javascript).

Pero .. OJO donde lo usas. Lo lógico es que redirecciones .. le pases alguna variabel de control .. y en la página que redireccionas le muestres el mensaje que corresponda. Eso evitará por ejemplo que si en un scrip tienes una estructura tipo:

<?
// recoges unos datos de un formulario ...
// haces un proceso de INSERT por ejemplo en una BD o envias un e-mail .. o similar ..

// muestras mensaje de error/exito .. esperas y redireccionas.

?>

En ese punto que está mostrandomen el mensaje de error/exito .. si "RECARGO" la página voy a ocasionar registros duplicados a tu BD o eviar e-mails duplicados .. o lo que hagas en ese script .. pues el navegador intentará enviar denuevo las variables al script php que hace ese proceso.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 12/05/2003, 07:09
Avatar de m_sassa  
Fecha de Ingreso: noviembre-2002
Ubicación: Rio Cuarto - Córdoba - Argentina
Mensajes: 299
Antigüedad: 22 años
Puntos: 0
ok, gracias cluster, pero me gustaria que me explicaras, si no es molestia, un poquito mas detallado, porque no entiendo porque ha de generar registros duplicados...


gracias
__________________
"El paisano es la persona que lleva el paisaje en el alma"
Atahualpa Yupanqui
  #6 (permalink)  
Antiguo 12/05/2003, 08:07
Avatar de drcyber  
Fecha de Ingreso: julio-2002
Mensajes: 826
Antigüedad: 22 años, 3 meses
Puntos: 2
Hola,

Creas registros duplicados al recargar la página sencillamente porque ejecutarás la consulta SQL 2 veces, y asi sucederá tantas veces como el usuario recargue la página.

Por lo tanto debes hacer lo que te dice Cluster, pasar una variable de control que no permita hacer procesos duplicados.
__________________
Dr. Cyber
Ingeniarte.com
(soy el mismo Takitei)
  #7 (permalink)  
Antiguo 12/05/2003, 09:05
Avatar de m_sassa  
Fecha de Ingreso: noviembre-2002
Ubicación: Rio Cuarto - Córdoba - Argentina
Mensajes: 299
Antigüedad: 22 años
Puntos: 0
y..... como?
__________________
"El paisano es la persona que lleva el paisaje en el alma"
Atahualpa Yupanqui
  #8 (permalink)  
Antiguo 12/05/2003, 09:28
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 22 años, 10 meses
Puntos: 3
Creo que la mejor opcion, como decia Cluster, es crear la etiqueta Meta del html. algo asi:

echo "<html>";
echo "<head>";
echo "<meta http-equiv='refresh' content='5; URL=pag.php'>";
echo "</head>";
echo "<body>";

si te fijas, las etiquetas son html, por eso te las edito con el echo, como si de un php se tratase. en el content, le pasas los segundos que quieras de espera antes de ir a la pagina.

espero haberte ayudado. Salu2
  #9 (permalink)  
Antiguo 12/05/2003, 10:25
Avatar de mdk
mdk
 
Fecha de Ingreso: noviembre-2002
Mensajes: 531
Antigüedad: 22 años
Puntos: 11
Código PHP:
<?
$tiempo 
10// Asi trancurririan 10 segundos antes de cambiar de pagina
$pagina "pagina.php"// Aquí se pondría el destino

header("Cache-Control: no-cache; must-revalidate;");
header("refresh: $tiempo; url=$pagina;");
echo 
"El texto que quieras mostrar";
?>
Espero que te sirva
__________________
SoY Lo Ke VeS iNKLuSo KuAnDo No Me VeS ;)
  #10 (permalink)  
Antiguo 12/05/2003, 12:09
Avatar de m_sassa  
Fecha de Ingreso: noviembre-2002
Ubicación: Rio Cuarto - Córdoba - Argentina
Mensajes: 299
Antigüedad: 22 años
Puntos: 0
ok, muchas gracias

bueno, pense que con esto lo solucionaba, pero.....

estoy usando el autentificator, y cuando me redirecciona no me valida el usuario y por lo tanto me da un error, el mismo que daria si estuviese tratando de entrar directamente a la pagina sin haberme logueado.... se entiende?

bueno espero haberme explicado....gracias
__________________
"El paisano es la persona que lleva el paisaje en el alma"
Atahualpa Yupanqui
  #11 (permalink)  
Antiguo 12/05/2003, 19:42
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
m_sassa .. Mi Autentificator requiere que propagues el SID de la sesion por cookies para que puedas usar cualquier tipo de redirecinamiento con libertad (sino, tendrías que propagar tu a mano el SID en tu redireccionamiento "meta" que estas usando).

Revisa la configuración de tu php.ini (o phpinfo() ..)

session.use_cookie .. a de estar a "1" ...


Lo de los registros duplicados .. ya te lo ha explicado drcyber, la solución te la comenté yo .. Debes de mostar los mensajes de "error/exito" en otra página diferente a la que en el flujo del proceso hagas tu insercción o manipulación de tus datos en tu BD. Cuando digo "página diferente" . no me refiero a una página fisicamente diferente, puede ser la misma .. gestionada por esa variable de control que mencioné ...


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 13:01.