Problema Formulario Contacto

  • Autor Autor fabriig2
  • Fecha de inicio Fecha de inicio
F

fabriig2

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola, que tal? Como andan? Porfavor alguien podria ayudarme en mi formulario de contacto? Al enviar un mensaje me da error y no se envia al email que puse!


En el archivo sendmail.php puse el siguiente codigo:

HTML:
<?php
    //we need to get our variables first
    
    $email_to =   'kobic@hotmail.com'; //the address to which the email will be sent
    $name     =   $_POST['name'];  
    $email    =   $_POST['email'];
    $subject  =   $_POST['subject'];
    $message  =   $_POST['message'];
    
    /*the $header variable is for the additional headers in the mail function,
     we are asigning 2 values, first one is FROM and the second one is REPLY-TO.
     That way when we want to reply the email gmail(or yahoo or hotmail...) will know 
     who are we replying to. */
    $headers  = "From: $email\r\n";
    $headers .= "Reply-To: $email\r\n";
    
    if(mail($email_to, $subject, $message, $headers)){
        echo 'sent'; // we are sending this text to the ajax request telling it that the mail is sent..      
    }else{
        echo 'failed';// ... or this one to tell it that it wasn't sent    
    }
?>

Y en el archivo index.php tengo el siguiente codigo:

HTML:
<!-- Contact Form -->
					<div class="contact-form col-md-6 wow fadeInUp" data-wow-duration="500ms" data-wow-delay="300ms">
						<form id="contact-form" method="post" action="sendmail.php" role="form">
						
							<div class="form-group">
								<input type="text" placeholder="nombre" class="form-control" name="name" id="name">
							</div>
							
							<div class="form-group">
								<input type="email" placeholder="Email" class="form-control" name="email" id="email">
							</div>
							
							<div class="form-group">
								<input type="text" placeholder="tema" class="form-control" name="subject" id="subject">
							</div>
							
							<div class="form-group">
								<textarea rows="6" placeholder="Mensaje" class="form-control" name="message" id="message"></textarea>	
							</div>
							
							<div id="mail-success" class="success">
								Mensaje Enviado!
							</div>
							
							<div id="mail-fail" class="error">
								Reintenta Nuevamente!
							</div>
							
							<div id="cf-submit">
								<input type="submit" id="contact-submit" class="btn btn-transparent" value="ENVIAR">
							</div>						
							
						</form>
					</div>
					<!-- ./End Contact Form -->
 
[MENTION=110850]fabriig2[/MENTION] Hola.

Si estas probando ese código localmente debes tener un servicio de correo para que pueda ser enviado.

Si es directamente sobre el servidor, ¿cual es el error que le aparece?

Saludos
 
[MENTION=110850]fabriig2[/MENTION] Hola.

Si estas probando ese código localmente debes tener un servicio de correo para que pueda ser enviado.

Si es directamente sobre el servidor, ¿cual es el error que le aparece?

Saludos

Hola, como estas?

El error que me aparece al enviar un mensaje mediante el formulario es el siguiente: Reintenta Nuevamente!

Tengo la función mail activa, es un server pago. Donweb.

Ojalà puedas ayudarme. Desde ya muchas gracias!

NOTA: Una cosa rara, cuando envio un mensaje desde el formulario y en la casilla de email pongo: kobic@hotmail.com .. el mensaje se envia sin problemas a esa casilla. Pero solo si pongo ese mismo email kobic@hotmail.com en la casilla de Email del formulario de contacto! 🙁
 
Hola, como estas?

El error que me aparece al enviar un mensaje mediante el formulario es el siguiente: Reintenta Nuevamente!

Tengo la función mail activa, es un server pago. Donweb.

Ojalà puedas ayudarme. Desde ya muchas gracias!

NOTA: Una cosa rara, cuando envio un mensaje desde el formulario y en la casilla de email pongo: kobic@hotmail.com .. el mensaje se envia sin problemas a esa casilla. Pero solo si pongo ese mismo email kobic@hotmail.com en la casilla de Email del formulario de contacto! 🙁

El error ha de estar en el correo desde el cual se envía el mensaje. Configura un correo en el servidor con la extensión de su dominio (info@sudominio.com) e incluyalo después en la cabecera que envía.

PHP:
$headers  = "From: info@sudominio.com \r\n";
$headers .= "Reply-To: info@sudominio.com \r\n";
 
El error ha de estar en el correo desde el cual se envía el mensaje. Configura un correo en el servidor con la extensión de su dominio (info@sudominio.com) e incluyalo después en la cabecera que envía.

PHP:
$headers  = "From: info@sudominio.com \r\n";
$headers .= "Reply-To: info@sudominio.com \r\n";

Genial !! Ahora si funciona!! Pero una cosa, cuando recibo el email en la casilla no me aparece el email de quien lo manda... solo me aparece en todos lados info@midominio.com 😕
 
Genial !! Ahora si funciona!! Pero una cosa, cuando recibo el email en la casilla no me aparece el email de quien lo manda... solo me aparece en todos lados info@midominio.com 😕

Crea un mensaje personalizado en el cual concatenes el email y el mensaje que viene por POST y ya está.
 
Crea un mensaje personalizado en el cual concatenes el email y el mensaje que viene por POST y ya está.

Creo que el error debe estar en la linea que le marco en rojo. o habra que agregar algo ...??

<?php
//we need to get our variables first

$email_to = 'info@midominio.com'; //the address to which the email will be sent
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];

/*the $header variable is for the additional headers in the mail function,
we are asigning 2 values, first one is FROM and the second one is REPLY-TO.
That way when we want to reply the email gmail(or yahoo or hotmail...) will know
who are we replying to. */
$headers = "From: info@midominio.com \r\n";
$headers .= "Reply-To: info@midominio.com \r\n";

if(mail($email_to, $subject, $message, $headers)){
echo 'sent'; // we are sending this text to the ajax request telling it that the mail is sent..
}else{
echo 'failed';// ... or this one to tell it that it wasn't sent
}
?>
 
Creo que el error debe estar en la linea que le marco en rojo. o habra que agregar algo ...??

<?php
//we need to get our variables first

$email_to = 'info@midominio.com'; //the address to which the email will be sent
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];

/*the $header variable is for the additional headers in the mail function,
we are asigning 2 values, first one is FROM and the second one is REPLY-TO.
That way when we want to reply the email gmail(or yahoo or hotmail...) will know
who are we replying to. */
$headers = "From: info@midominio.com \r\n";
$headers .= "Reply-To: info@midominio.com \r\n";

if(mail($email_to, $subject, $message, $headers)){
echo 'sent'; // we are sending this text to the ajax request telling it that the mail is sent..
}else{
echo 'failed';// ... or this one to tell it that it wasn't sent
}
?>

Ese es el correo al cual le llegará los datos del formulario. Sin embargo usted solo verá el asunto y el mensaje de lo que escribió el remitente.

PHP:
mail($email_to, $subject, $message, $headers)

¿observa por algún lado el email de la persona que envió el mensaje? Creeria que no. Ahora vuelva y lea mi comentario anterior y entenderá lo que le menciono.
 
Ese es el correo al cual le llegará los datos del formulario. Sin embargo usted solo verá el asunto y el mensaje de lo que escribió el remitente.

PHP:
mail($email_to, $subject, $message, $headers)

¿observa por algún lado el email de la persona que envió el mensaje? Creeria que no. Ahora vuelva y lea mi comentario anterior y entenderá lo que le menciono.

Entiendo lo que me menciona en este comentario, pero en el anterior no lo entendí. perdón la ignorancia, recién me estoy iniciando en esto. Qué línea debería agregar o modificar? entiendo que no aparece el remitente pero cómo hago para que aparezca? porque se me va a complicar cuando me llega el email de alguien no voy a saber a qué correo responderle ! jeje. Desde ya te agradezco y perdón que sea tan bruto pero recién comienzo en esto. 😛8:
 
Entiendo lo que me menciona en este comentario, pero en el anterior no lo entendí. perdón la ignorancia, recién me estoy iniciando en esto. Qué línea debería agregar o modificar? entiendo que no aparece el remitente pero cómo hago para que aparezca? porque se me va a complicar cuando me llega el email de alguien no voy a saber a qué correo responderle ! jeje. Desde ya te agradezco y perdón que sea tan bruto pero recién comienzo en esto. 😛8:

Simplemente algo así:

PHP:
$email = $_POST['email'];
$message = $email . " " . $_POST['message'];

Ahora bien, formate el mensaje como mejor le parezca y listo.
 
Simplemente algo así:

PHP:
$email = $_POST['email'];
$message = $email . " " . $_POST['message'];

Ahora bien, formate el mensaje como mejor le parezca y listo.

Muchísimas gracias y disculpe haberlo molestado!!! Ya lo deje así! :encouragement::encouragement::encouragement:
 
Atrás
Arriba