| |||
formulario: mensaje de respuesta e e-mail Hola, me gustaria saber como tengo que hacer para que al completar un formulario de mi web la persona en cuestion se le habrá un mensaje de respuesta y que los datos que ha intrioducido me lleguen a mi e-mail, eso si, sin que se le abra el cliente de correo ya que no me gusta nada como queda, a ver si alguien me puede ayudar por favor, es lo primero que voy a hacer en php |
| ||||
Sugerencia: Revisa en los Faqs ya que hay informacion de eso.
__________________ Carlos Herrera Web Developer www.carlos.com.ve Para descargar archivos propios a su Teléfono Mobil? www.carlosfocus.com |
| |||
lo siento pero ya he mirado las faqs y varios temas y no encuentro la información concreta, alguien puede ayudarme o remitirme a algun enlace que hable de esto? gracias |
| ||||
Esto Código PHP:
__________________ Carlos Herrera Web Developer www.carlos.com.ve Para descargar archivos propios a su Teléfono Mobil? www.carlosfocus.com |
| ||||
El Script hace esto: Formulario Email a tu cuenta de aviso de formulario nuevo Auto respuesta al usuario via email
__________________ Carlos Herrera Web Developer www.carlos.com.ve Para descargar archivos propios a su Teléfono Mobil? www.carlosfocus.com |
| |||
De todas formas estos últimos días he intentado hacerlo de forma que no solo me llegue a mi correo sino que tambien me habrá una nueva página (no texto) de respuesta. Por ejemplo: <form action="respuesta.php".... Me he dado cuenta que al hacer esto inhabilito el correo, me sale la web de respuesta pero no me llegan al correo, ¿como podria hacerlo? Código completo <html> <head> <style> BODY { scrollbar-face-color: #ffffff; scrollbar-highlight-color: #333333; scrollbar-3dlight-color: #333333; scrollbar-darkshadow-color: #999999; scrollbar-shadow-color: #999999; scrollbar-arrow-color: #c50f0c; scrollbar-track-color: #ffffff; } </style> <script> var enlace="#c50f0c"; var sobrenlace="#000000"; function iluminar(capital){ document.getElementById(capital).style.color=sobre nlace; } function oscurecer(capital){ document.getElementById(capital).style.color=enlac e; } </script> <style> a{ color:#333333; text-decoration:none; } </style> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body bgcolor="#ffffff" scroll="auto" text="#000000" topmargin="8"> <div align="center"><? if (!$HTTP_POST_VARS){ ?> <form action='respuestacat.html' method="post" name="form" id="form" onsubmit="return validate(this);" ENCTYPE="multipart/form-data"><table width="70%" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="5%" height="9"><img src="formulariotitcat.jpg" width="127" height="36"></td><td width="45%" height="9"> </td><td height="50%" width="50%"> <div align="right"></div></td></tr> </table><table width="98%" border="1" cellspacing="0" cellpadding="0" bgcolor="ffffff" bordercolor="660000" ALIGN="CENTER"> <tr> <td height="100"> <div align="center"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td height="2"> </td><td height="2"> <div align="right"></div></td></tr> </table></div><table width="95%" border="0" cellspacing="0" cellpadding="0" align="center" topmargin="0" bordercolor="#666666" height="8"> <tr> <td height="100"> <p align="left"><FONT COLOR="#000000" FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2">Nom:<BR><INPUT TYPE="text" NAME="nombre" SIZE="50"><BR>Nick (fòrum de canalnastic.com):<BR><INPUT TYPE="text" NAME="nickforo"><BR>Nick (xat #nastic de IRC): <BR><INPUT TYPE="text" NAME="nickchat"> <BR>Canals d'IRC que freqüentes: <BR><INPUT TYPE="text" NAME="canales" SIZE="80"><BR>Data de naixement: <BR><INPUT TYPE="text" NAME="fecha"><BR>Lloc de naixement: <BR><INPUT TYPE="TEXT" NAME="lugar"><BR><BR>Messenger: <BR><INPUT TYPE="text" NAME="messenger"><BR>Yahoo Messenger:<BR><INPUT TYPE="text" NAME="yahoo"><BR>E-mail habitual:<BR><INPUT TYPE="text" NAME="mail"> <BR>Marca la casella si acceptes fer públiques en la web les adreces de correu anteriors.<INPUT TYPE="checkbox" NAME="aceptacion" VALUE="checkbox"><BR><BR>Aficions: <BR><TEXTAREA NAME="aficiones" ROWS="2" COLS="80" WRAP="VIRTUAL"></TEXTAREA><BR><BR>Que lloc del camp et situes?<BR>Gol Sud <INPUT TYPE="radio" NAME="p" VALUE="sur"> Gol Nord <INPUT TYPE="radio" NAME="p" VALUE="norte"> Tribun a <INPUT TYPE="radio" NAME="p" VALUE="tribuna"> Preferent   ;<INPUT TYPE="radio" NAME="p" VALUE="preferente"> Altres & nbsp; <INPUT TYPE="radio" NAME="p" VALUE="radiobutton"></FONT></p><p align="left"><FONT COLOR="#000000" FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2">Alguna cosa sobre tu:<BR><TEXTAREA NAME="algo" ROWS="5" COLS="80" WRAP="VIRTUAL"></TEXTAREA><BR><BR>Un suggeriment per a millorar la web:<BR><TEXTAREA NAME="sugerencia" COLS="80" WRAP="VIRTUAL" ROWS="5"></TEXTAREA><BR><BR> </FONT><font color="#000000"><INPUT TYPE="submit" NAME="Submit" VALUE="Enviar"> </font> </p></td></tr> </table><table width="100%" border="0" cellspacing="0" cellpadding="0" height="8"> <tr> <td height="2"> </td><td height="2"> <div align="right"></div></td></tr> </table></td></tr> </table><BR><p><BR></p></form><? }else{ //Estoy recibiendo el formulario, compongo el cuerpo $textF = "TITULO DE TU FORMULARIO ESTO LO VERAS EN EL EMAIL\r\n"; $textF = "============================================\r\n" ; $textF .= "Nombre: ".$_POST["nombre"]."\r\n"; // Aqui solamente colocas los nombres a los campos de tu formulario $textF .= "Nick en el foro: ".$_POST["nickforo"]."\r\n"; $textF .= "Nick en el chat #nastic de IRC: ".$_POST["nickchat"]."\r\n"; $textF .= "Canales de IRC que frecuentas: ".$_POST["canales"]."\r\n"; $textF .= "Fecha de nacimiento: ".$_POST["fecha"]."\r\n"; $textF .= "Lugar de nacimiento: ".$_POST["lugar"]."\r\n"; $textF .= "Messenger: ".$_POST["messenger"]."\r\n"; $textF .= "Yahoo Messenger: ".$_POST["yahoo"]."\r\n"; $textF .= "E-mail habitual: ".$_POST["mail"]."\r\n"; $textF .= "Aceptas: ".$_POST["aceptacion"]."\r\n"; $textF .= "Aficiones: ".$_POST["aficiones"]."\r\n"; $textF .= "En que lugar te situas?: ".$_POST["p"]."\r\n"; $textF .= "Algo sobre ti: ".$_POST["algo"]."\r\n"; $textF .= "Una sugerencia para mejorar la web: ".$_POST["sugerenia"]."\r\n"; $textF .= "============================================\r\n" ; $enviarEmail = array("[email protected]"); while (list($key,$email) = each($enviarEmail)){ mail($email,"ASUNTO CORREO",$textF); } //doy las gracias por el envío echo " Gracias por su Correo"; $asunto = "Auto-Respuesta de TU PAGINA"; $mensaje = "Saludos ".$nomb.", Gracias por cONTACTARNOS. Gracias, TU DOMINIO.com"; mail($mail,$asunto,$mensaje, "FROM:[email protected]"); } ?> <br> <br> <br> <br> <br> <br> </div> </body> </html> |
| ||||
El action está apuntando a "respuestacat.html", que es otro fichero distinto del que pegas ahí (lo supongo porque es .html y lo que has pegado es PHP). El action tiene que llamar al mismo script que contiene el formulario, y este script, después de enviar el mail, deberá llevar el código que te ha dicho sty, apuntando a respuestacat.html |
| |||
Espero que podais perdonar mi ignorancia en cuanto a php, lo intento y no se e que fallo <html> <head> <style> BODY { scrollbar-face-color: #ffffff; scrollbar-highlight-color: #333333; scrollbar-3dlight-color: #333333; scrollbar-darkshadow-color: #999999; scrollbar-shadow-color: #999999; scrollbar-arrow-color: #c50f0c; scrollbar-track-color: #ffffff; } </style> <script> var enlace="#c50f0c"; var sobrenlace="#000000"; function iluminar(capital){ document.getElementById(capital).style.color=sobre nlace; } function oscurecer(capital){ document.getElementById(capital).style.color=enlac e; } </script> <style> a{ color:#333333; text-decoration:none; } </style> <title>Untitled Document</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body bgcolor="#ffffff" scroll="auto" text="#000000" topmargin="8"> <div align="center"><? if (!$HTTP_POST_VARS){ ?> <form action='¿que debería poner aqui?' method="post" name="form" id="form" onsubmit="return validate(this);" ENCTYPE="multipart/form-data"><table width="70%" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="5%" height="9"><img src="formulariotitcat.jpg" width="127" height="36"></td><td width="45%" height="9"> </td><td height="50%" width="50%"> <div align="right"></div></td></tr> </table><table width="98%" border="1" cellspacing="0" cellpadding="0" bgcolor="ffffff" bordercolor="660000" ALIGN="CENTER"> <tr> <td height="100"> <div align="center"> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td height="2"> </td><td height="2"> <div align="right"></div></td></tr> </table></div><table width="95%" border="0" cellspacing="0" cellpadding="0" align="center" topmargin="0" bordercolor="#666666" height="8"> <tr> <td height="100"> <p align="left"><FONT COLOR="#000000" FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2">Nom:<BR><INPUT TYPE="text" NAME="nombre" SIZE="50"><BR>Nick (fòrum de canalnastic.com):<BR><INPUT TYPE="text" NAME="nickforo"><BR>Nick (xat #nastic de IRC): <BR><INPUT TYPE="text" NAME="nickchat"> <BR>Canals d'IRC que freqüentes: <BR><INPUT TYPE="text" NAME="canales" SIZE="80"><BR>Data de naixement: <BR><INPUT TYPE="text" NAME="fecha"><BR>Lloc de naixement: <BR><INPUT TYPE="TEXT" NAME="lugar"><BR><BR>Messenger: <BR><INPUT TYPE="text" NAME="messenger"><BR>Yahoo Messenger:<BR><INPUT TYPE="text" NAME="yahoo"><BR>E-mail habitual:<BR><INPUT TYPE="text" NAME="mail"> <BR>Marca la casella si acceptes fer públiques en la web les adreces de correu anteriors.<INPUT TYPE="checkbox" NAME="aceptacion" VALUE="checkbox"><BR><BR>Aficions: <BR><TEXTAREA NAME="aficiones" ROWS="2" COLS="80" WRAP="VIRTUAL"></TEXTAREA><BR><BR>Que lloc del camp et situes?<BR>Gol Sud <INPUT TYPE="radio" NAME="p" VALUE="sur"> Gol Nord <INPUT TYPE="radio" NAME="p" VALUE="norte"> Tribun a <INPUT TYPE="radio" NAME="p" VALUE="tribuna"> Preferent   ;<INPUT TYPE="radio" NAME="p" VALUE="preferente"> A ltres <INPUT TYPE="radio" NAME="p" VALUE="altres"></FONT></p><p align="left"><FONT COLOR="#000000" FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2">Alguna cosa sobre tu:<BR><TEXTAREA NAME="algo" ROWS="5" COLS="80" WRAP="VIRTUAL"></TEXTAREA><BR><BR>Un suggeriment per a millorar la web:<BR><TEXTAREA NAME="sugerencia" COLS="80" WRAP="VIRTUAL" ROWS="5"></TEXTAREA><BR><BR> </FONT><font color="#000000"><INPUT TYPE="submit" NAME="Submit" VALUE="Enviar"> </font> </p></td></tr> </table><table width="100%" border="0" cellspacing="0" cellpadding="0" height="8"> <tr> <td height="2"> </td><td height="2"> <div align="right"></div></td></tr> </table></td></tr> </table><BR><p><BR></p></form><? }else{ //Estoy recibiendo el formulario, compongo el cuerpo $textF = "TITULO DE TU FORMULARIO ESTO LO VERAS EN EL EMAIL\r\n"; $textF = "============================================\r\n" ; $textF .= "Nombre: ".$_POST["nombre"]."\r\n"; // Aqui solamente colocas los nombres a los campos de tu formulario $textF .= "Nick en el foro: ".$_POST["nickforo"]."\r\n"; $textF .= "Nick en el chat #nastic de IRC: ".$_POST["nickchat"]."\r\n"; $textF .= "Canales de IRC que frecuentas: ".$_POST["canales"]."\r\n"; $textF .= "Fecha de nacimiento: ".$_POST["fecha"]."\r\n"; $textF .= "Lugar de nacimiento: ".$_POST["lugar"]."\r\n"; $textF .= "Messenger: ".$_POST["messenger"]."\r\n"; $textF .= "Yahoo Messenger: ".$_POST["yahoo"]."\r\n"; $textF .= "E-mail habitual: ".$_POST["mail"]."\r\n"; $textF .= "Aceptas: ".$_POST["aceptacion"]."\r\n"; $textF .= "Aficiones: ".$_POST["aficiones"]."\r\n"; $textF .= "En que lugar te situas?: ".$_POST["p"]."\r\n"; $textF .= "Algo sobre ti: ".$_POST["algo"]."\r\n"; $textF .= "Una sugerencia para mejorar la web: ".$_POST["sugerencia"]."\r\n"; $textF .= "============================================\r\n" ; $enviarEmail = array("[email protected]"); while (list($key,$email) = each($enviarEmail)){ mail($email,"ASUNTO CORREO",$textF); } //doy las gracias por el envío echo "<SCRIPT LANGUAGE='javascript'> location.href = 'formulario.php';¿puedo enlazar aquí con otro archivo html o solo pude ser php? </SCRIPT>"; $asunto = "Auto-Respuesta de TU PAGINA"; $mensaje = "Saludos ".$nomb.", Gracias por cONTACTARNOS. Gracias, TU DOMINIO.com"; mail($mail,$asunto,$mensaje, "FROM:[email protected]"); } ?> <br> <br> <br> <br> <br> <br> </div> </body> </html> |
| ||||
Suponiendo que el archivo que contiene el formulario y el envío de mail se llama formulario.php y que la página de agradecimientos se llama gracias.htm, en el action tendrás que llamar a formulario.php y en el location.href tendrás que llamar a gracias.htm (puede ser el tipo de archivo que quieras, no sólo html). Así, lo que harás será: 1. Se llama a formulario.php por primera vez. 2. Como no hay POST, se imprime el formulario. 3. El formulario se envía y es recogido por la misma página, formulario.php. 4. Como ahora sí hay POST, se envía el mail y se redirige a gracias.htm. Creo que es eso lo que quieres hacer, ¿no? |
| ||||
Por cierto, el script tiene un pequeño problema. Imagina que alguien envía el formulario y es redirigido a gracias.htm. Si pulsa atrás en el navegador, se enviará de nuevo el mail, y así todas las veces que quiera darle. Para eso, en vez de:
Código:
deberías poner:echo "<SCRIPT LANGUAGE='javascript'> location.href = 'gracias.htm'; </SCRIPT>";
Código:
Para usar header() debes asegurarte de que el script no ha generado nada por la pantalla, para eso, coge todo el html que tienes al principio y mételo en la condición que imprime el formulario. Así, si se envía el mail, el script no generará ningún código html (no lo necesitas) y funcionará la redirección HTTP. header("Location: gracias.htm"); |
| |||
en el action he puesto el nombre del archivo de formulario. He probado de terminar con los dos codigo que me dices: echo "<SCRIPT LANGUAGE='javascript'> location.href = 'gracias.htm'; </SCRIPT>"; header("Location: gracias.htm"); he probado cada uno por separado y llamando a otro archivo pero ninguno de los dos me funciona, me envian el correo pero me da mensaje de error en luga rde salirme la pagina de respuesta, es mi primer php y no tengo ni idea de que puede ser, siento las molestias. |