Cómo enviar un formulario por e-mail [Cerrado]

Denunciar
Message postés
1
Date d'inscription
viernes, 28 de marzo de 2014
Estatus
Miembro
Última intervención
viernes, 28 de marzo de 2014
-
 sadfas -
Saludos a todos, estoy practicando con una pagina web y en la seccion de 'contacto' he creado un formulario con campos a rellenar y el boton enviar; quisiera que se envien a mi direccion de correo y me ha resultado imposible hacerlo... Alguien puede ayudarme??
El codigo del formulario es el que sigue, Gracias de antemano.


<form id="form1" method="post"=""action="">
<p>
   <input name="name" type="text" id="name" size="50" maxlength="35" />
   <label for="name"><span class="Estilo3">Nombre y Apellido</span></label>
</p>
<p class="Estilo3">
   <input name="email" type="text" id="email" size="50" maxlength="30" />
   <label for="email"><br />
   e-mail</label>
</p>
<p class="Estilo3">
  <select name="act" size="1" id="act">
  <option selected="selected">elija un elemento</option>
  <option>Hogar</option>
  <option>Comunidad</option>
  <option>Bar/Restaurant</option>
  <option>Hostelería</option>
  <option>Centro Médico</option>
  <option>Piso</option>
  <option>Otros (especifique)</option>
  </select>
  <label for="act">Actividad</label>
</p>
  <p class="Estilo3">
  <select name="plaga" size="1" id="plaga">
  <option selected="selected">elija un elemento</option>
  <option>Insectos Rastreros</option>
  <option>Insectos Voladores</option>
  <option>Roedores</option>
  <option>Control de Aves</option>
  <option>Tratamiento de la Madera</option>
  <option>Venta de Extintores</option>
  <option>Otras plagas (especifique)</option>
  </select>
  <label for="plaga">Problema a Tratar</label>
</p>
  <p class="Estilo3">
  <label for="msje">Mensaje</label>
  <textarea name="msje" id="msje" cols="48" rows="7"></textarea>
</p>
</form>
<form id="form2" method="post" action="">
<p><label for="send"></label>
<input type="submit" name="send" id="send" value="Enviar" /></p>
</form>
Consulta también:

2 respuestas

Message postés
10
Date d'inscription
viernes, 28 de marzo de 2014
Estatus
Miembro
Última intervención
viernes, 28 de marzo de 2014
2
Cuando estamos trabajando en un sitio web, muchas veces existe la necesidad de proveer al usuario con un formulario de contacto para hacernos llegar sus consultas, comentarios u otro tipo de información.

En este truco te mostramos un ejemplo de cómo hacer un formulario usando HTML para crearlo y PHP para procesarlo y enviarlo por e-mail.

El formulario
El script PHP


El formulario
Se trata de un fragmento de código HTML que usando el TAG <form> nos permite crear el formulario de entrada de datos a ser completado por el usuario:

formulario.html

<form name="frmContacto" method="post" action="sendbymail.php">
<table width="500px">
<tr>
<td>
<label for="first_name">Nombre: *</label>
</td>
<td>
<input type="text" name="first_name" maxlength="50" size="25">
</td>
</tr>
<tr>
<td valign="top"">
<label for="last_name">Apellido: *</label>
</td>
<td>
<input type="text" name="last_name" maxlength="50" size="25">
</td>
</tr>
<tr>
<td>
<label for="email">Dirección de E-mail: *</label>
</td>
<td>
<input type="text" name="email" maxlength="80" size="35">
</td>
</tr>
<tr>
<td>
<label for="telephone">Número de teléfono:</label>
</td>
<td>
<input type="text" name="telephone" maxlength="25" size="15">
</td>
</tr>
<tr>
<td>
<label for="comments">Comentarios: *</label>
</td>
<td>
<textarea name="comments" maxlength="500" cols="30" rows="5"></textarea>
</td>
</tr>
<tr>
<td colspan="2" style="text-align:right">
<input type="submit" value="Enviar">
</td>
</tr>
</table>
</form>


El script PHP
La otra parte de código a escribir será entonces la encargada de tomar los datos del formulario anterior, validarlos y si todo está bien, enviar el formulario por correo electrónico a una dirección de destino determinada en el código.

Veamos este ejemplo:

sendbymail.php

<?php
if(isset($_POST['email'])) {

// Debes editar las próximas dos líneas de código de acuerdo con tus preferencias
$email_to = "destinatario@sudominio.com";
$email_subject = "Contacto desde el sitio web";

// Aquí se deberían validar los datos ingresados por el usuario
if(!isset($_POST['first_name']) ||
!isset($_POST['last_name']) ||
!isset($_POST['email']) ||
!isset($_POST['telephone']) ||
!isset($_POST['comments'])) {

echo "<b>Ocurrió un error y el formulario no ha sido enviado. </b><br />";
echo "Por favor, vuelva atrás y verifique la información ingresada<br />";
die();
}

$email_message = "Detalles del formulario de contacto:\n\n";
$email_message .= "Nombre: " . $_POST['first_name'] . "\n";
$email_message .= "Apellido: " . $_POST['last_name'] . "\n";
$email_message .= "E-mail: " . $_POST['email'] . "\n";
$email_message .= "Teléfono: " . $_POST['telephone'] . "\n";
$email_message .= "Comentarios: " . $_POST['comments'] . "\n\n";


// Ahora se envía el e-mail usando la función mail() de PHP
$headers = 'From: '.$email_from."\r\n".
'Reply-To: '.$email_from."\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);

echo "¡El formulario se ha enviado con éxito!";
}
?>
expectacular, gracias man
Pues acabo de meterme en el tema de crear una pagina web y aunque en mi epoca toque bastante de prgramacion nunca llegue a montarmelo yo solo, y ahora a la hora de crear una simple pagina con un formulario y con un boton que envie los datos del formulario a una direccion de correo se me viene el mundo encima. Os comento lo que tengo para que os situeis y espero que alguien me pueda ayudar:
Editor web: HTML-KIT
Host: Razy Hosting

Documentos que tengo

index.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
Envio de emails con PHP
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</style>
<body>
<form action="enviar.php" method="post">
<span class="Estilo1">Asunto:
<input type="text" name="asunto" size="30">
<br />
<b>Para:
<input type="text" name="destino" size="30">
<br />
<b>Mensaje:
<textarea name="mensaje" cols="45" rows="7"></textarea>
</span>
<span class="Estilo1">
<input type="submit" value="Enviar!">
</span>
</form>
</body>
</html>


enviar.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Documento sin título
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
if($destino!=""){
mail($destino, $asunto, "Email enviado desde sitgesk8boarding.tk".$mensaje."");
echo "Se ha enviado el mensaje a ".$destino." correctamente!";
}else{
echo "Debes escribir un destinatario";}
?>
</body>
</html>


En principio la pagina la carga bien y me dice que el formulario esta enviado cuando pongo la direccion pero nunca llego a recibir el correo. Mis dudas son:
-Puede ser problema del editor que no acepte codigo php? es que de momento es el unico que he conseguido enlazar con el hosting, porque con los demas no me salia o no encotnre un tutorial(tengo el dreamweaver pero no supe conectarlo al servidor)
-Puede ser problema del hosting que no admita la funcion "mail()"?? en ese caso agradeceria que alguien me dijese uno gratuito donde probarlo.

Y por si a alguien le interesa esta es la pagina: http://lamoscacojonera.getenjoyment.net/

Como veis estoy muy pez en el tema de crear paginas web, aunque programar no me resulta complicado, el hecho de empezar es lo que me cuesta como habeis visto, no se alojar la pagina no se elegir el editor, etc.
Espero que alguien me pueda ayudar, o si me pudiesen poner un ejemplo que funcione, con el editor usado y un tipo de alojamiento q funcione se lo agradeceria tmb.








ESPERO Y TE SIRVA
estoy con el mismo problema q vos, pudiste solucionarlo??

Saludos
tengo el mismo problema le doy enviar y me dice mensaje enviado pero nunca llega