Foros aprenderaprogramar.com
Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: Gabosaki en 02 de Agosto 2017, 04:13
-
Buenas noches, solicito de su apoyo ya que no puedo determinar la falla en un código para enviar correo desde un formulario html.
el código que utilizo es el siguiente:
<?php
$name = @trim(stripslashes($_POST['name']));
$from = @trim(stripslashes($_POST['email']));
$telephone = @trim(stripslashes($_POST['telephone']));
$subject = @trim(stripslashes($_POST['service']));
$message = @trim(stripslashes($_POST['message']));
$to = 'correo@miempresa.com';
$headers = array();
$headers[] = "MIME-Version: 1.0";
$headers[] = "Content-type: text/plain; charset=iso-8859-1";
$headers[] = "From: {$name} <{$from}>";
$headers[] = "Reply-To: <{$from}>";
$headers[] = "Subject: {$subject}";
$headers[] = "X-Mailer: PHP/".phpversion();
mail($to, $subject, $message, $headers);
die;
?>
dar click en el boton de enviar, manda el mensaje de envio correcto pero no llegan los correos a la bandeja de entrada y al revisar el log de errores del servidor arroja el siguiente mensaje:
PHP Warning: mail() expects parameter 4 to be string, array given in /home/public_html/email.php on line 16
Segun entiendo el problema es el array, pero no puedo determinar correctamente la falla.
agradezco de antemano su atención y ayuda.
Saludos
-
Saludos intentando ayudar, he modificado el codigo suministrado a ver si le funciona..! :)
<?php
$name = @trim(stripslashes($_POST['name']));
$from = @trim(stripslashes($_POST['email']));
$telephone = @trim(stripslashes($_POST['telephone']));
$subject = @trim(stripslashes($_POST['service']));
$message = @trim(stripslashes($_POST['message']));
$to = 'correo@miempresa.com';
$headers = "MIME-Version: 1.0";
$headers .= "Content-type: text/plain; charset=iso-8859-1";
$headers .= "From: {$name} <{$from}>";
$headers .= "Reply-To: <{$from}>";
$headers .= "Subject: {$subject}";
$headers .= "X-Mailer: PHP/".phpversion();
mail($to, $subject, $message, $headers);die;
?>
-
muchas gracias joher60,
el código me sirvió de mucho, y perdona que te vuelva a molestar, el problema ahora es que no registra los valores de los campos.
al enviar el correo, lo envía vacio. ya revisé el códig del formulario y en teoria todo funciona bien
el código es el siguiente:
<div class="contact-form wow fadeIn" data-wow-duration="1000ms" data-wow-delay="600ms">
<div class="row">
<div class="col-sm-6">
<form id="main-contact-form" name="contact-form" method="post" action="email.php">
<div class="row wow fadeInUp" data-wow-duration="1000ms" data-wow-delay="300ms">
<div class="col-sm-6">
<div class="form-group">
<input type="text" name="name" id="name" class="form-control" placeholder="Nombre" required="required">
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<input type="email" name="email" class="form-control" placeholder="Correo Electrónico" required="required">
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<input type="text" name="telephone" class="form-control" placeholder="Teléfono" required="required">
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<select name="service" id="service" class="form-control" placeholder="Servicio">
<option value="valor">Seleccione una opción...</option>
<option value="primero">uno</option>
<option value="segundo">dos</option>
<option value="tercero">tres</option>
<option value="cuarto">cuatro</option>
<option value="quinto">cinco</option>
</select>
</div>
</div>
<div class="form-group">
<textarea name="message" id="message" class="form-control" rows="4" placeholder="Mensaje" required></textarea>
</div>
<div class="form-group">
<button type="submit" class="btn-submit">Enviar</button>
</div>
</form>
ojalá me puedas ayudar, nuevamente agradezco de antemano el apoyo.
Saludos
-
Creo que debes definir el
value=""
de cada Input.