Foros del Web » Programando para Internet » PHP »

problemas con formulario mail

Estas en el tema de problemas con formulario mail en el foro de PHP en Foros del Web. hola gente! soy nuevo y estoy muy entusiasmado con el poder participar y aprender de toda la comunidad. Mi duda es la siguiente, tengo un ...
  #1 (permalink)  
Antiguo 09/09/2009, 00:45
 
Fecha de Ingreso: septiembre-2009
Mensajes: 30
Antigüedad: 14 años, 7 meses
Puntos: 0
problemas con formulario mail

hola gente! soy nuevo y estoy muy entusiasmado con el poder participar y aprender de toda la comunidad.

Mi duda es la siguiente, tengo un formulario mail php, funciona correctamente, pero cuando logra mandar los datos, se carga una pagina totalmente en blanco en el navegador diciendo "correo enviado exitosamente" . Me gustaría saber como puedo cambiar esta pagina, o sea, puedo hacer que una vez que hayan sido mandados los datos me redirecciones hacia una pagina que contenga algún tipo de diseño o que emerja algún tipo de pop up sin que toda la visualizacion se ponga en blanco.
Espero que puedan solucionar mi inquietud, ya que no soy programador (soy diseñador gráfico) y este tema se me dificulta bastante al no tratarse de mi area.

Aquí les dejo el código de mi formulario

Cita:

<?php

$nombre = $_POST['nombre'];
$empresa = $_POST['empresa'];
$mail = $_POST['mail'];

$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 . ", de la empresa " . $empresa . " \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 = 'fulano_hotmail_com';
$asunto = 'Contacto';

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

echo 'correo enviado exitosamente';

?>
Desde ya muchas gracias y saludos coordiales.
  #2 (permalink)  
Antiguo 09/09/2009, 02:32
 
Fecha de Ingreso: marzo-2009
Mensajes: 133
Antigüedad: 15 años
Puntos: 4
problemas con formulario mail

porqué no montas el formulario sobre la misma página ya con los graficos?

De está manera se queda en la misma página, y solo agregarias un enlace:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>


<div><fieldset>
<form id="form1" name="form1" method="POST" action="<?php $_SERVER ['PHP_SELF'] ?>"

aquí va todo el formulario.

<label for="nombre">nombre</label>
<input type="text" name="nombre" id="nombre" />
<br />
<label for="empresa">Empresa</label>
<input type="text" name="empresa" id="empresa" />
<br />
<label for="mail">mail</label>
<input type="text" name="mail" id="mail" />
<br />

</form>
</fieldset>
</div>


<?php
$nombre = $_POST['nombre'];
$empresa = $_POST['empresa'];
$mail = $_POST['mail'];

etc....



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


if (mail) // si el envió es correcto, te da un aviso
{ // y además coloca un link.

echo 'correo enviado exitosamente';
echo '< a href="tu_enlace.php">Enlace</a>';

}else // si ocurre un error de envio, aparce el mensaje y puede intentar de nuevo
echo "Ocurrio un error durante el envio, intente de nuevo";


?>
</body>
</html>




Podrias uasr mas metodos pero creo que éste es muy simple y te puede ayudar.
No lo he probado pero intentalo.

Espero y ya tengas algo de conocimiento de diseño web, o busca alguna plantilla gratuita para que ahi experimentes!



Suerte y mucho animo..!
  #3 (permalink)  
Antiguo 09/09/2009, 03:07
Avatar de triskell  
Fecha de Ingreso: junio-2007
Mensajes: 149
Antigüedad: 16 años, 10 meses
Puntos: 2
Respuesta: problemas con formulario mail

Lo que puedes hacer es sustituir el

Código:
echo "Mensaje enviado correctamente";
por lo siguiente:

Código:
echo '<META HTTP-EQUIV="Refresh" CONTENT="1;URL=tu url"/>';
Donde tu url es la dirección url a la cual quieres deireccionarte, espero que te sirva.

PD: Este código te hace unaredirección automática.
  #4 (permalink)  
Antiguo 09/09/2009, 19:50
 
Fecha de Ingreso: septiembre-2009
Mensajes: 30
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: problemas con formulario mail

Cita:
Iniciado por triskell Ver Mensaje
Lo que puedes hacer es sustituir el

Código:
echo "Mensaje enviado correctamente";
por lo siguiente:

Código:
echo '<META HTTP-EQUIV="Refresh" CONTENT="1;URL=tu url"/>';
Donde tu url es la dirección url a la cual quieres deireccionarte, espero que te sirva.

PD: Este código te hace unaredirección automática.

Mil Gracias, funciono de mil maravillas!!
Gracias a las dos respuestas, me fueron muy utiles!
Saludos

R
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 00:49.