D
dg7
Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Seguro a varios les ha pasado que al probar su formulario en otro hosting les ha funcionado perfectamente, pero al cambiarse a Donweb no ha funcionado por el SMTP.
El problema es que los únicos valores que llegan al enviar un mail son el nombre, el email y el mensaje del formulario. Acá debajo dejo el código completo php para que puedan agregar los campos que necesiten y que funcione con el bendito SMTP:
El problema es que los únicos valores que llegan al enviar un mail son el nombre, el email y el mensaje del formulario. Acá debajo dejo el código completo php para que puedan agregar los campos que necesiten y que funcione con el bendito SMTP:
PHP:
<?php
require("class.phpmailer.php");
require("class.smtp.php");
// Valores enviados desde el formulario
if ( !isset($_POST["nombre"]) || !isset($_POST["email"]) || !isset($_POST["telefono"]) || !isset($_POST["asunto"]) || !isset($_POST["mensaje"]) ) {
die ("Es necesario completar todos los datos del formulario");
}
$nombre = $_POST["nombre"];
$email = $_POST["email"];
$telefono = $_POST["telefono"];
$asunto = $_POST["asunto"];
$mensaje = $_POST["mensaje"];
$destinatario = "info@tudominio.com"; // Correo al que llegará la consulta //
// Datos de la cuenta de correo utilizada para enviar vía SMTP
$smtpHost = "XXXXX.ferozo.com"; // Dominio alternativo brindado en el email de alta
$smtpUsuario = "no-reply@XXXXX.ferozo.com"; // Mi cuenta de correo
$smtpClave = "XXXXX"; // Mi contraseña
$mail = new PHPMailer();
$mail->IsSMTP();
$mail->SMTPAuth = true;
$mail->Port = 587;
$mail->IsHTML(true);
$mail->CharSet = "utf-8";
// VALORES A MODIFICAR //
$mail->Host = $smtpHost;
$mail->Username = $smtpUsuario;
$mail->Password = $smtpClave;
$mail->From = $email; // Email desde donde envío el correo.
$mail->FromName = $nombre;
$mail->AddAddress($destinatario); // Esta es la dirección a donde enviamos los datos del formulario
$mail->Subject = "Formulario desde el Sitio Web"; // Este es el titulo del email.
$mensajeHtml = nl2br($mensaje);
$mail->Body = "
<html>
<body>
<h1>Recibiste un nuevo mensaje desde el formulario de contacto</h1>
<p>Informacion enviada por el usuario de la web:</p>
<p>nombre: {$nombre}</p>
<p>email: {$email}</p>
<p>telefono: {$telefono}</p>
<p>asunto: {$asunto}</p>
<p>mensaje: {$mensaje}</p>
</body>
</html>
<br />"; // Texto del email en formato HTML
$mail->AltBody = "{$mensaje} \n\n "; // Texto sin formato HTML
// FIN - VALORES A MODIFICAR //
$mail->SMTPOptions = array(
'ssl' => array(
'verify_peer' => false,
'verify_peer_name' => false,
'allow_self_signed' => true
)
);
$estadoEnvio = $mail->Send();
if($estadoEnvio){
echo "El correo fue enviado correctamente.";
} else {
echo "Ocurrió un error inesperado.";
}
?>
Última edición: