phpMailer de ne pas envoyer de mail, Erreurinfo est vide

Je suis de la conception d'un simple formulaire de Contact à l'aide de phpMailer. Les données sont transmises à l'PHP correctement, mais ensuite l'e-mail n'est jamais envoyé. J'ai essayé de regarder l'erreur info, mais elle est vide. Toutes les pensées? Merci à l'avance!

<?php

    require_once('email/mail/class.phpmailer.php');

    $email_to = 'myEmail';
    $email_subject = 'Contact form';    

    $fname = $_POST['firstname'];
    $lname = $_POST['lastname'];
    $email = $_POST['email'];
    $dob = $_POST['dob'];
    $subject = $_POST['subject'];
    $comments = $_POST['comments'];

    $mailer = new PHPMailer(true);
    $mailer->Host = '**********';
    $mailer->Username = '********';
    $mailer->Password = '*********';
    $mailer->SMTPAuth = true;
    $mailer->AddAddress($email_to);
    $mailer->SMTPDebug = false;
    $mailer->IsSMTP();
    $mailer->FromName = 'Contact Page';
    $mailer->From = "**********";
    $mailer->Sender = '**********';
    $mailer->Subject = $email_subject;
    $mailer->Body = "
        Source: Contact Page
        Name: ".$fname. " ".$lname."
        Email: ".$email."
        Date of Birth: ".$dob."
        Subject: ".$subject."
        Comments: ".$comments;

    echo "Data received";

    if(!$mailer->Send()) {
        echo 'Message was not sent.';
        echo 'Mailer error: ' . $mail->ErrorInfo;
    } else {
        echo 'Message has been sent.';
    }

?>

De sortie est:

Data receivedMessage was not sent.Mailer error: 

Sortie de print_r($mailer):

PHPMailer Object ( 
[Priority] => 3 
[CharSet] => iso-8859-1 
[ContentType] => text/plain 
[Encoding] => 8bit 
[ErrorInfo] => 
[From] => contact@blah.com 
[FromName] => Contact Page 
[Sender] => contact@blah.com 
[Subject] => Contact form 
[Body] => 
Source: blah 
Name: Derp McDerpson 
Email: derpallday@gmail.com 
Date of Birth: 1/1/2000 
Subject: The things! 
Comments: fix them 
[AltBody] => 
[WordWrap] => 0 
[Mailer] => smtp 
[Sendmail] => /usr/sbin/sendmail 
[PluginDir] => 
[Version] => 1.73 
[ConfirmReadingTo] => 
[Hostname] => 
[Host] => mail.authsmtp.com 
[Port] => 25 
[Helo] => 
[SMTPAuth] => 1 
[Username] => blah 
[Password] => blah 
[Timeout] => 10 
[SMTPDebug] => 
[SMTPKeepAlive] => 
[smtp] => 
[to] => Array ( 
[0] => Array ( 
[0] => blah@blah.com 
[1] => blah 
) 
) 
[cc] => Array ( ) 
[bcc] => Array ( ) 
[ReplyTo] => Array ( ) 
[attachment] => Array ( ) 
[CustomHeader] => Array ( ) 
[message_type] => 
[boundary] => Array ( ) 
[language] => Array ( ) 
[error_count] => 0 
[LE] => 
)
  • qu'obtenez-vous si vous mettez print_r($mailer) juste avant que vos données reçues de la ligne et de l'exécuter?
  • avez-vous remplissez votre formulaire avant cette exécution? J'ai remarqué qu'il n'y a pas d'information dans le nom: e-mail, etc champs
  • J'ai fait le remplir, et de toutes les informations est venu à travers correctement. Je l'ai supprimé afin de s'adapter à la sortie dans un commentaire.
  • Ajouté à la question.
  • Je crois qu'il vous manque de l'effectif envoyer la pièce: $mailer->Send(); essayez d'ajouter que, en l'exécutant.
  • Jim: c'est à l'intérieur de la si... si vous changez de sorte qu'il est if ( $mailer->send() ) { echo "sent"; }else{ echo "failed"; }
  • le peu que je sais à propos de ce dit qu'il a besoin d'avoir le $mailer->send(); et le si a été pour la vérification des erreurs.