Ajuda com formulário de contato hmtl/php

  • Autor Autor deniz946
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
deniz946

deniz946

Gamma
Redactor
Buenas chicos, estoy intentando implementar un formulario de contacto en mi pagina web pero no me funciona, me llega el correo pero los campos de datos me aparecen vacios, me podeis ayudar a ver si vemos donde tengo el problema? Muchas gracias de antemano

La parte html dentro de mi index.html
Inserir CODE, HTML ou PHP:
<form role="form" form name="contactform" method="post" action="send_form_email.php"> 
				 <div class="form-group">
                        <label>Nombre</label> <input type="text" name="nombre" class="form-control" placeholder="Introduce tu nombre" >
				  </div>
				 <div class="form-group">
                        <label>Apellidos</label> <input type="text" name="apellidos" class="form-control" placeholder="Introduce tus apellidos" >
				  </div>
				 <div class="form-group">
                        <label>Email</label> <input type="emal" name="email" class="form-control" placeholder="Introduce tu email" >
				  </div>
				 <div class="form-group">
                        <label>Telefono</label> <input type="text" name="telefono" class="form-control" placeholder="Introduce tu telefono" >
				  </div>
                  
				  <div class="form-group">
                        <label>Mensaje</label> <textarea name="mensaje" class="form-control" rows="7"></textarea>
				  </div>
                 
                     <button type="submit" class="btn btn-default" value="Submit">   <a href="send_form_email.php">Enviar</a>
				 </form>

				</div>

La parte PHP en un archivo aparte llamado "send_form_email.php"

Inserir CODE, HTML ou PHP:
<?php
$nombre = $_POST['nombre'];
$last_name = $_POST['apellidos'];
$telephone = $_POST['telefono'];
$email = $_POST['email'];
$message = $_POST['mensaje'];
$formcontent=" $nombre $apellidos $email $telefono $mensaje";
$recipient = "MIEMAIL";
$subject = "Subject from $nombre";
$mailheader = "From: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You! We will get back to you as soon as possible!" . " -" . "<a href='./index.php'> Back to site</a>";
?>
 
Última edição:
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
$apellidos no existe en el PHP. Lo tenés como $last_name.

Lo mismo con $telephone y $message .

Probá con este PHP


PHP:
<?php
$nombre = $_POST['nombre'];
$last_name = $_POST['apellidos'];
$telephone = $_POST['telefono'];
$email = $_POST['email'];
$message = $_POST['mensaje'];
$formcontent=" $nombre $last_name $email $telephone $message ";
$recipient = "MIEMAIL";
$subject = "Subject from $nombre";
$mailheader = "MIME-Version: 1.0\r\n" . 'From: ' . $email .  "\r\n" . 'X-Mailer: PHP/' . phpversion();

mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You! We will get back to you as soon as possible!" . " -" . "<a href='./index.php'> Back to site</a>";
?>
 
Pasa algo muy raro, que muchas veces viene vacio el email, pero 1 de cada 5 o 6 viene con los datos. Sabes a que se puede deber?
 
Usa este HTML

HTML:
<form action="Nombredelarchivo.php" method="post">
 <p>Su nombre: <input type="text" name="nombre" /></p>
 <p>Su Apellido: <input type="text" name="apellido" /></p>
 <p>Su E-Mail: <input type="text" name="email" /></p>
 <p>Su Telefono: <input type="text" name="telefono" /></p>
<p>Su Mensaje: <input type="textarea" name="mensaje" /></p>
 <p><input type="submit" /></p>
</form>

PHP:
<?php
$nombre = $_POST['nombre'];
$apellido = $_POST['apellido'];
$telefono = $_POST['telefono'];
$email = $_POST['email'];
$mensaje = $_POST['mensaje'];
$contenido=" $nombre $apellido $email $telefono $mensaje";
$tuemail = "tuemail@dominio.com";
$asunto = "Mensaje De $nombre";
$header = "From: $email \r\n";
$header .= "Content-type: text/html; charset=iso-8859-1\r\n"; 
$header .= "MIME-Version: 1.0\r\n"; 
mail($tuemail, $asunto, $contenido, $header) or die("Error!");
echo "Email Enviado!" . " -" . "<a href='./index.php'> Volver al Sitio</a>";
?>

Proba eso y si no avisa que error te da.
Ojo con usar ese codigo que no estas validando si estan vacios o no los campos, si es un Email valido, etc

Saludos HomeGuard
 
Última edição:
Voltar
Topo