为什么我的代码给我一个关于消息体为空的PHP错误消息?

时间:2015-04-26 21:46:03

标签: php

你好我得到了这个错误:

  

邮件正文空白

这是我的代码:

enter code here
            <?php
 //CODIGO PARA MANDAR E-MAIL CON CLASES (mailer)

// EJEMPLO USANDO PHPMAILER CON GMAIL
include("mailer/class.phpmailer.php");
include("mailer/class.smtp.php");

$mail= new PHPMailer();
$mail->IsSMTP();                                // DICIENDOLE A LA CLASE QUE SE DEBE USAR SMTP
$mail->SMTPAuth   = true;                       // ACTIVAR LA AUTENTIFICACIÓN SMTP
$mail->SMTPSecure = "ssl";                      // ESTABLECE EL PREFIJO DEL SERVIDOR
$mail->Host       = "smtp.gmail.com";           // ESTABLECE A GMAIL COMO SERVIDOR SMTP
$mail->Port       = 465;                        // ESTABLECE EL PUERTO DE SMTP
$mail->Username   = "zodmex@gmail.com";         // GMAIL correo completo
$mail->Password   = "******";               // GMAIL password
$mail->From       = "zodmex@gmail.com";     // REMITENTE CORREO
$mail->FromName   = "Nombre del Remitente";             // REMITENTE NOMBRE
$mail->Subject    = "Aqui va el Asunto";   //AQUI VA EL ASUNTO
$mail->AddAddress("ricardoloyola45@gmail.com"); //DIRECCION DEL DESTINATARIO
$mail->IsHTML(true); // send as HTML
$mensaje="Mensaje sitio Rii Mov";

if (isset($_POST['nombre'])) {
$nombre ="nombre: ".$_POST['nombre'];
} else {
$nombre = "";
}

if (isset($_POST['email'])) {
$email ="email: ".$_POST['email'];
} else {
$email = "";
}


if (isset($_POST['mensaje'])) {
$mensaje ="mensaje: ".$_POST['mensaje'];
} else {
$mensaje = "";
}


$mail->Body =$mensaje; // INSTRUCCION DEL ENVIO

//VALIDACION DEL ENVIO
if(!$mail->Send()) {
  echo "error al enviar el correo: " . $mail->ErrorInfo;
}
else
{
    echo "Correo enviado con exito";
}

?>

1 个答案:

答案 0 :(得分:1)

可能是$ _POST [&#39; mensaje&#39;]未设置,您应该添加调试检查

if(empty ($_POST ['mensaje']))
  die('Body not set');

修改

您还可以将自己的支票更改为此内容,以确保正文包含值:

if (isset($_POST['mensaje'])) {
  $mensaje = "mensaje: ".$_POST['mensaje'];
} else {
  echo 'The body does not contain content';
}