PHP - Problema con codigo

 
Vista:

Problema con codigo

Publicado por Maria (3 intervenciones) el 03/06/2005 14:39:30
Hola:

Estoy enviando un formulario por email con la funcion mail, pero no se como redirigirlo a una pagina despues de enviar el formulario. El codigo es el siguiente:
$exito=mail("[email protected]",$subject,$mensage);
if ($exito){
print "Mensaje enviado";
}
else {
print "No se ha podido enviar el mensaje";
}
Gracias por adelantado.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problema con codigo

Publicado por ArthasMX (39 intervenciones) el 03/06/2005 17:01:56
Yo los redirecciono de la siguiente manera:

1- header("Location: pagina.php");

2- echo "<html><HEAD><META HTTP-EQUIV='Refresh' CONTENT='10;URL=pagina.php'></HEAD></html>";

Donde 1 me funciona cuando quiero redireccionar SIN antes haber enviado un mensaje...es decir...se envia tu email y de inmediato te lleva a otra pagina.

y 2, lo utilizo por ejemplo...envio el email, aparece una pagina diciendo "Mensaje enviado...redireccionando en 10 sec.."....y ya se redirecciona a la pagina escrita en URL.
Aunque esto, en algunos navegadores no funciona...debes poner el clasico mensaje: "si no ha sido redireccionado, de click aqui"

Pruebate estos ejemplos...espero te funcionen...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

NO FUNCIONA

Publicado por Maria (3 intervenciones) el 06/06/2005 08:36:34
La solucion que me has dado no funciona ¿hay alguna otra manera de hacerlo?. Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:NO FUNCIONA

Publicado por a677dar (9 intervenciones) el 06/06/2005 15:45:21
Lo que muestra ArthasMX es lo correcto, simplemente quiero ampliar un poco.

Puedes redireccionar a una pagina de destino (digamos destino.php) asi:

1) header("Location: destino.php");
Puedes usar esto siempre y cuando no haya habido previamente ningun output, ni siquiera un renglon en blanco antes de "<?" que abren el php !

El problema de esta redireccion es que no vas a poder mandar un mensaje que indique que el mail fue enviado en exito y esas cosas, ya que la redireccion sera inmediata.

2) Usando Meta Tags:
Comienza tu script asi:
<html><HEAD>
<META HTTP-EQUIV='Refresh' CONTENT='5;URL=destino.php'>
</HEAD></html>

luego continuas en PHP (abrelo con <?) con el resto del script

Aqui si podras poner un mensaje que indique que el mail fue enviado con exito y luego de 5 segundos se redireccionara a destino.php.
El valor del tiempo de redireccion del Meta Tag esta en segundos.

3) Usando javascript:
Comienza tu script asi:
<script>
setTimeout("document.location='destino.php'", 5000)
</script>

luego continuas en PHP (abrelo con <?) con el resto del script

Aqui tambien podras poner un mensaje que indique que el mail fue enviado con exito y luego de 5 segundos se redireccionara a destino.php

El valor del tiempo de redireccion de la funcion setTimeout esta en mili-segundos.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Gracias

Publicado por Maria (3 intervenciones) el 07/06/2005 12:32:57
Gracias por todo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar