Formulario en HTML
Quisiera insertar un formulario en HTML en la pag web.
La página me ermite agregar como widgets ventanas para que pegue todo el texto HTML que quiera.
He probado con algunos modelos pero realmente salen muchas propagandas y no puedo entender bien que es cada cosa.
En definitiva quiero tener un formulario en HTML con 5 campos (Nombre, Email, Empresa, Asunto, Mensaje) y que me permita recibir en 2 correos los formularios que llena la gente en la página web. Sólo necesito 2 botones (enviar y limpiar).
¿Cómo tengo que hacer?
La página me ermite agregar como widgets ventanas para que pegue todo el texto HTML que quiera.
He probado con algunos modelos pero realmente salen muchas propagandas y no puedo entender bien que es cada cosa.
En definitiva quiero tener un formulario en HTML con 5 campos (Nombre, Email, Empresa, Asunto, Mensaje) y que me permita recibir en 2 correos los formularios que llena la gente en la página web. Sólo necesito 2 botones (enviar y limpiar).
¿Cómo tengo que hacer?
1 respuesta
Respuesta de jemateos
1
1
El código HTML para insertar un Formulario es sencillo
Ejemplo:
<form>
Nombre: <input type="text" name="nombre"><br>
Email: <input type="text" name="email"><br>
Empresa: <input type="text" name="empresa"><br>
Asunto: <input type="text" name="asunto"><br>
<textarea name="mensaje"> </textarea><br>
<input type="submit" value="Enviar"><input type="reset" value="Limpiar">
</form>
Eso es a lo que comprende el código HTML para mostrar un formulario muy sencillo, si quieres puedes darle más forma poniendo los campos dentro de una tabla y utilizando CSS para los style.
Ya para hacer que se envíe por email tiene que utilizar código PHP o ASP dependiendo de la tecnología de tu servidor.
Ejemplo:
<form>
Nombre: <input type="text" name="nombre"><br>
Email: <input type="text" name="email"><br>
Empresa: <input type="text" name="empresa"><br>
Asunto: <input type="text" name="asunto"><br>
<textarea name="mensaje"> </textarea><br>
<input type="submit" value="Enviar"><input type="reset" value="Limpiar">
</form>
Eso es a lo que comprende el código HTML para mostrar un formulario muy sencillo, si quieres puedes darle más forma poniendo los campos dentro de una tabla y utilizando CSS para los style.
Ya para hacer que se envíe por email tiene que utilizar código PHP o ASP dependiendo de la tecnología de tu servidor.
me he com¡Piado de internet el siguiente código HTML.
<form method="post" action="http://www.emailmeform.com/fid.php?formid=422270" enctype="multipart/form-data" accept-charset="UTF-8">
<table cellpadding="2" cellspacing="0" border="0" bgcolor="#FFFFFF">
<tr>
<td><font face="Verdana" size="2" color="#000000"></font>
<div style="" id="mainmsg"> </div>
</td>
</tr>
</table>
<br>
<table cellpadding="2" cellspacing="0" border="0" bgcolor="#FFFFFF">
<tr valign="top">
<td nowrap><font face="Verdana" size="2" color="#000000">Nombre</font></td>
<td><input type="text" name="FieldData0" size="32"> </td>
</tr>
<tr valign="top">
<td nowrap><font face="Verdana" size="2" color="#000000">Empresa</font></td>
<td><input type="text" name="FieldData1" size="32"> </td>
</tr>
<tr valign="top">
<td nowrap><font face="Verdana" size="2" color="#000000">E-mail</font></td>
<td><input type="text" name="FieldData2" size="32"> </td>
</tr>
<tr valign="top">
<td nowrap><font face="Verdana" size="2" color="#000000">Asunto</font></td>
<td><input type="text" name="FieldData3" size="32"> </td>
</tr>
<tr valign="top">
<td nowrap><font face="Verdana" size="2" color="#000000">Mensaje</font></td>
<td><textarea name="FieldData4" cols="28.5" rows="7"></textarea><br> </td>
</tr>
<tr>
<td colspan="2"></td>
</tr>
<tr>
<td>
<div style="position: absolute; left: 16px; width:100px;" id="p"></div>
<script language="JavaScript"><!-- var left = document.getElementById("p").style.left ; var top = document.getElementById("p").style.top ; document.write("<div style=\"position: absolute; top:" + top + "; left: " + left + "; background-color: #FFFFFF; display:block; width:100px; height: 20px;\"> </div>")//--></script>
</td>
<td align="right"><input type="text" name="hida2" value="" maxlength="100" size="3" style="display : none;"><input type="submit" class="btn" value="Enviar email" name="Submit"> <input type="reset" class="btn" value=" Borrar " name="Clear"></td>
</tr>
<tr>
<td colspan=2 align="center"><br></td>
</tr>
</table>
</form>
Lo he usado, funciona bien, pero por ejemplo no me aparecen los correor a donde se están enviando. ¿Estos están dentro de la página que figura al principio?.
Cómo hago para no depender de páginas externas como la que figura en el código:
http://www.emailmeform.com/fid.php?formid=422270
¿Es muy difícil incluir un pequeño cartel que diga " el mensaje ha sido enviado exitosamente" en la misma página donde se escribe es formulario para que aparexca al enviarlo?, y que la pantalla se pueda cerrar desde ahí mismo, que no abra ventanas nuevas.
Muchas gracias.
<form method="post" action="http://www.emailmeform.com/fid.php?formid=422270" enctype="multipart/form-data" accept-charset="UTF-8">
<table cellpadding="2" cellspacing="0" border="0" bgcolor="#FFFFFF">
<tr>
<td><font face="Verdana" size="2" color="#000000"></font>
<div style="" id="mainmsg"> </div>
</td>
</tr>
</table>
<br>
<table cellpadding="2" cellspacing="0" border="0" bgcolor="#FFFFFF">
<tr valign="top">
<td nowrap><font face="Verdana" size="2" color="#000000">Nombre</font></td>
<td><input type="text" name="FieldData0" size="32"> </td>
</tr>
<tr valign="top">
<td nowrap><font face="Verdana" size="2" color="#000000">Empresa</font></td>
<td><input type="text" name="FieldData1" size="32"> </td>
</tr>
<tr valign="top">
<td nowrap><font face="Verdana" size="2" color="#000000">E-mail</font></td>
<td><input type="text" name="FieldData2" size="32"> </td>
</tr>
<tr valign="top">
<td nowrap><font face="Verdana" size="2" color="#000000">Asunto</font></td>
<td><input type="text" name="FieldData3" size="32"> </td>
</tr>
<tr valign="top">
<td nowrap><font face="Verdana" size="2" color="#000000">Mensaje</font></td>
<td><textarea name="FieldData4" cols="28.5" rows="7"></textarea><br> </td>
</tr>
<tr>
<td colspan="2"></td>
</tr>
<tr>
<td>
<div style="position: absolute; left: 16px; width:100px;" id="p"></div>
<script language="JavaScript"><!-- var left = document.getElementById("p").style.left ; var top = document.getElementById("p").style.top ; document.write("<div style=\"position: absolute; top:" + top + "; left: " + left + "; background-color: #FFFFFF; display:block; width:100px; height: 20px;\"> </div>")//--></script>
</td>
<td align="right"><input type="text" name="hida2" value="" maxlength="100" size="3" style="display : none;"><input type="submit" class="btn" value="Enviar email" name="Submit"> <input type="reset" class="btn" value=" Borrar " name="Clear"></td>
</tr>
<tr>
<td colspan=2 align="center"><br></td>
</tr>
</table>
</form>
Lo he usado, funciona bien, pero por ejemplo no me aparecen los correor a donde se están enviando. ¿Estos están dentro de la página que figura al principio?.
Cómo hago para no depender de páginas externas como la que figura en el código:
http://www.emailmeform.com/fid.php?formid=422270
¿Es muy difícil incluir un pequeño cartel que diga " el mensaje ha sido enviado exitosamente" en la misma página donde se escribe es formulario para que aparexca al enviarlo?, y que la pantalla se pueda cerrar desde ahí mismo, que no abra ventanas nuevas.
Muchas gracias.
Efectivamente cuando presionamos el boton "Enviar email" llamamos al evento "action" del form que en este caso llama a la pagina : http://www.emailmeform.com/fid.php?formid=422270
Por eso anteriormente te decía que para lograr el envío de los correos necesitas utilizar PHP p ASP (en este caso esta utilizando PHP "fid.php") Pero eso va a depender de tu servicio de hosting.
Lo del mensaje de enviado correctamente no es problema, utilizas javascript con un ALERT("El mensaje ha sido enviado exitosamente");
Te adjunto el código PHP que utilizo yo en una de mis páginas. Debes tener en cuenta en modificar los campos correspondientes para que funcione con tu código. Y en el action de tu form debes colocar la dirección de tu archivo php
Código PHP:
http://dsi-web.com.ar/codigoPHP.txt
Por eso anteriormente te decía que para lograr el envío de los correos necesitas utilizar PHP p ASP (en este caso esta utilizando PHP "fid.php") Pero eso va a depender de tu servicio de hosting.
Lo del mensaje de enviado correctamente no es problema, utilizas javascript con un ALERT("El mensaje ha sido enviado exitosamente");
Te adjunto el código PHP que utilizo yo en una de mis páginas. Debes tener en cuenta en modificar los campos correspondientes para que funcione con tu código. Y en el action de tu form debes colocar la dirección de tu archivo php
Código PHP:
http://dsi-web.com.ar/codigoPHP.txt
Ahora tengo 2 archivos. Uno HTML y otro php pero en el php creo que tengo algún problema porque me salen símbolo raros al competar el form.
HTML:
<html>
<body>
<font face=Arial size=2>
<form method="post" action="contact.php">
<table bgcolor=#ffffcc align=center>
<tr>
<td colspan=2><strong>Formulario de contacto:</strong></td>
</tr>
<tr>
<td><font color=red>*</font> Nombre:</td>
<td><input size=25 name="Nombre"></td>
</tr>
<tr>
<td><font color=red>*</font> Email:</td>
<td><input size=25 name="Email"></td>
</tr>
<tr>
<td>Empresa:</td>
<td><input size=25 name="Empresa"></td>
</tr>
<tr>
<td>Teléfono:</td>
<td><input size=25 name="Teléfono"></td>
</tr>
<tr>
<td colspan=2>Mensaje:</td>
</tr>
<tr>
<td colspan=2 align=center><textarea name="Mensaje" rows=7 cols=35></textarea></td>
</tr>
<tr>
<td colspan=2 align=center><input type=submit name="send" value=" Enviar "> <input type=reset name="borrar" value=" Borrar "></td>
</tr>
<tr>
<td colspan=2 align=center><small><font color=red>*</font> campo requerido</small></td>
</tr>
</table>
</form>
</body>
</html>
php:
<?php
$to = $_REQUEST['sendto'] ;
$from = $_REQUEST['Email'] ;
$name = $_REQUEST['Nombre'] ;
$headers = "From: $from";
$subject = "Web Contact Data";
$fields = array();
$fields{"Nombre"} = "Nombre";
$fields{"Empresa"} = "Empresa";
$fields{"Email"} = "Email";
$fields{"Teléfono"} = "Teléfono";
$fields{"Mensaje"} = "Mensaje";
$body = "We have received the following information:\n\n"; foreach($fields as $a => $b){ $body .= sprintf("%20s: %s\n",$b,$_REQUEST[$a]); }
$headers2 = "From: [email protected]";
$subject2 = "Thank you for contacting us";
$autoreply = "Thank you for contacting us. Somebody will get back to you as soon as possible, usualy within 48 hours. If you have any more questions, please consult our website at www.diriperu.com";
if($from == '') {print "You have not entered an email, please go back and try again";}
else {
if($name == '') {print "You have not entered a name, please go back and try again";}
else {
$send = mail($to, $subject, $body, $headers);
$send2 = mail($from, $subject2, $autoreply, $headers2);
if($send)
{print "Gracias por contactarse"; }
else
{print "We encountered an error sending your mail, please notify [email protected]"; }
}
}
?>
Agradezco todo ayuda!
Saludos,
HTML:
<html>
<body>
<font face=Arial size=2>
<form method="post" action="contact.php">
<table bgcolor=#ffffcc align=center>
<tr>
<td colspan=2><strong>Formulario de contacto:</strong></td>
</tr>
<tr>
<td><font color=red>*</font> Nombre:</td>
<td><input size=25 name="Nombre"></td>
</tr>
<tr>
<td><font color=red>*</font> Email:</td>
<td><input size=25 name="Email"></td>
</tr>
<tr>
<td>Empresa:</td>
<td><input size=25 name="Empresa"></td>
</tr>
<tr>
<td>Teléfono:</td>
<td><input size=25 name="Teléfono"></td>
</tr>
<tr>
<td colspan=2>Mensaje:</td>
</tr>
<tr>
<td colspan=2 align=center><textarea name="Mensaje" rows=7 cols=35></textarea></td>
</tr>
<tr>
<td colspan=2 align=center><input type=submit name="send" value=" Enviar "> <input type=reset name="borrar" value=" Borrar "></td>
</tr>
<tr>
<td colspan=2 align=center><small><font color=red>*</font> campo requerido</small></td>
</tr>
</table>
</form>
</body>
</html>
php:
<?php
$to = $_REQUEST['sendto'] ;
$from = $_REQUEST['Email'] ;
$name = $_REQUEST['Nombre'] ;
$headers = "From: $from";
$subject = "Web Contact Data";
$fields = array();
$fields{"Nombre"} = "Nombre";
$fields{"Empresa"} = "Empresa";
$fields{"Email"} = "Email";
$fields{"Teléfono"} = "Teléfono";
$fields{"Mensaje"} = "Mensaje";
$body = "We have received the following information:\n\n"; foreach($fields as $a => $b){ $body .= sprintf("%20s: %s\n",$b,$_REQUEST[$a]); }
$headers2 = "From: [email protected]";
$subject2 = "Thank you for contacting us";
$autoreply = "Thank you for contacting us. Somebody will get back to you as soon as possible, usualy within 48 hours. If you have any more questions, please consult our website at www.diriperu.com";
if($from == '') {print "You have not entered an email, please go back and try again";}
else {
if($name == '') {print "You have not entered a name, please go back and try again";}
else {
$send = mail($to, $subject, $body, $headers);
$send2 = mail($from, $subject2, $autoreply, $headers2);
if($send)
{print "Gracias por contactarse"; }
else
{print "We encountered an error sending your mail, please notify [email protected]"; }
}
}
?>
Agradezco todo ayuda!
Saludos,
Estuve analizando tu página web. (www.diriperu.com)
Y tambien probre tu codigo PHP
Primer error: La funcion mail() necesita parametros SMTP como te mostre en mi ejemplo que podes visualizar aqui (http://dsi-web.com.ar/codigoPHP.txt)
Segundo posible error: Me parece que tu servicio de hosting no soporta código PHP. Porque todas esas letras raras son porque no logra interpretar los comandos en php.
Asegurate de que el servidor tenga soporte PHP o si tiene soporte ASP.
Y tambien probre tu codigo PHP
Primer error: La funcion mail() necesita parametros SMTP como te mostre en mi ejemplo que podes visualizar aqui (http://dsi-web.com.ar/codigoPHP.txt)
Segundo posible error: Me parece que tu servicio de hosting no soporta código PHP. Porque todas esas letras raras son porque no logra interpretar los comandos en php.
Asegurate de que el servidor tenga soporte PHP o si tiene soporte ASP.
Sinceramente no ´se que cambiar en mi códico con respecto a los parámetros SMTP.
De esto no entiendo un comino.
El servidor es http://www.aqphost.com/ y al parecer soporta php.
La verdad tampoco se si el archivo .php lo tengo que copiar dentro de publi_html o en una carpeta que dice php.
Gracias nuevamente.
De esto no entiendo un comino.
El servidor es http://www.aqphost.com/ y al parecer soporta php.
La verdad tampoco se si el archivo .php lo tengo que copiar dentro de publi_html o en una carpeta que dice php.
Gracias nuevamente.
No se si lograste resolver tu inconveniente.
Los datos para la conexión y configuración SMTP te la tiene que brindar tu servidor. Ya que el es quien maneja los puertos SMTP y el envío de correo.
En mi caso yo uso Dattatec como servidor y con esta configuración http://dsi-web.com.ar/codigoPHP.txt me funciona sin problemas alguno. Tené en cuanta que la cuenta desde donde se envíe tiene que ser una cuenta de tu dominio. Uno no puede elegir aleatoreamente desde donde enviar los correos, si se puede elegir a donde enviarlo.
Y con respecto a la pregunta del public_html, en mi caso todo debe ir dentro del public_html, y la página PHP yo la tengo junto con la página HTML que tiene el formulario.
Los datos para la conexión y configuración SMTP te la tiene que brindar tu servidor. Ya que el es quien maneja los puertos SMTP y el envío de correo.
En mi caso yo uso Dattatec como servidor y con esta configuración http://dsi-web.com.ar/codigoPHP.txt me funciona sin problemas alguno. Tené en cuanta que la cuenta desde donde se envíe tiene que ser una cuenta de tu dominio. Uno no puede elegir aleatoreamente desde donde enviar los correos, si se puede elegir a donde enviarlo.
Y con respecto a la pregunta del public_html, en mi caso todo debe ir dentro del public_html, y la página PHP yo la tengo junto con la página HTML que tiene el formulario.
- Compartir respuesta
- Anónimo
ahora mismo