Foros del Web » Programando para Internet » PHP »

Redireccionar con mensaje

Estas en el tema de Redireccionar con mensaje en el foro de PHP en Foros del Web. Hola compañeros, he estado leyendo bastante y no se donde tengo el fallo... Tengo una web HTML que envia un formulario por PHP y quiero ...
  #1 (permalink)  
Antiguo 26/06/2013, 03:08
Avatar de gines86  
Fecha de Ingreso: abril-2011
Ubicación: Murcia
Mensajes: 20
Antigüedad: 13 años
Puntos: 2
Redireccionar con mensaje

Hola compañeros, he estado leyendo bastante y no se donde tengo el fallo...
Tengo una web HTML que envia un formulario por PHP y quiero que cuando envíe el mensaje me redireccione otra vez a la web a ser posible con un mensaje previo de que ha sido enviado correctamente.
He visto que hay que poner header ("Location: loquesea.html"); o otra opción sería añadir un script después del código pero no lo consigo, seguro que hay algún fallo en el código y no lo veo :(
El mensaje se envía, y que muestre mensaje de que se ha enviado también pero después ya no se seguir

Código:
...
....
<FORM id="contacto" name="contacto" action="enviar.php" method="POST">
<p>
<label>Nombre<br />
  <input name="nombre" type="text" id="nombre" size="30"/></label>
</p>
<p>
  <label>Telefono<br />
    <input name="telefono" type="text" id="telefono" size="30"/></label></p>
<p>
  <label>E-mail<br />
    <input name="mail" type="text" id="mail" size="30"/>
</label>
</p>
<p><label>Mensaje<br>
<textarea name="mensaje" cols="40" rows="8" id="mensaje">
</textarea></label>
</p>
<p><input type="submit" name="Submit" value="Enviar"/><input type="reset" name="Reset" value="Borrar"/></p>


</FORM>

....
...
Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>enviar</title>
</head>

<body>
<?php
$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$telefono = $_POST['telefono'];

$header = 'From: ' . $mail . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";

$mensaje = "Este mensaje fue enviado por " . $nombre . ",
 con telefono " . $telefono . " \r\n";
$mensaje .= "Su e-mail es: " . $mail . " \r\n";
$mensaje .= "Mensaje: " . $_POST['mensaje'] . " \r\n";
$mensaje .= "Enviado el " . date('d/m/Y', time());

$para = '[email protected]';
$asunto = 'Consulta web';

mail($para, $asunto, utf8_decode($mensaje), $header);

echo 'Mensaje enviado correctamente';

header ("Location: index.html");
?>

</body>
</html>
¿¿Que tengo mal?? Me estoy volviendo un poco loco :S
  #2 (permalink)  
Antiguo 26/06/2013, 05:57
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: Redireccionar con mensaje

echo 'Mensaje enviado correctamente';

prueba

echo '<script>alert('Mensaje enviado correctamente');</script>;

no es la mejor alternativa pero sirve para empezar.
__________________
Fere libenter homines, id quod volunt, credunt.

Etiquetas: formulario, html, mensaje, redireccionar
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 15:40.