Swift Mailer message d'erreur “Adresse de la boîte aux lettres donnée [] n'est pas conforme à la RFC”

J'ai construit un simple formulaire de contact PHP qui est censé envoyer du courrier à travers la Swift Mailer script.

Problème est que je reçois cette erreur

Uncaught exception
'Swift_RfcComplianceException" avec
le message " l'Adresse de la boîte aux lettres donnée []
n'est pas conforme à la RFC 2822, 3.6.2.'

Qui je suppose signifie que je suis en utilisant un invalide adresse e-mail. Mais depuis que je suis à l'aide de [email protected] pour tester le script, le problème est sans doute ailleurs. C'est ma configuration:

Où le courrier est envoyé à:

$my_mail = '[email protected]';
$my_name = 'My Name';

Le contenu du message:

$name = trim($_POST['name']);
$email = trim($_POST['email']);
$message = trim($_POST['message']);
$date = date('d/m/Y H:i:s'); 
$ipaddress = $_SERVER['REMOTE_ADDR'];  

$content = $message.'\n\nSent on: '.$date.' From: '.$ipaddress;

La fonction que j'utilise pour envoyer l'e-mail à l'aide de swiftmailer:

function send_mail () {
require('/path/to/swift_required.php');

//The means of transport
$transport = Swift_SmtpTransport::newInstance('mail.mydomain.com', 25);
$transport->setUsername('myusername');
$transport->setPassword('mypass');

$mailer = Swift_Mailer::newInstance($transport);

//The message
$mail = Swift_Message::newInstance();
$mail->setSubject('Hello');
$mail->setFrom(array($email => $name ));
$mail->setTo(array($my_mail => $my_name));
$mail->setBody($content, 'text/plain');

//Sending the message
$test = $mailer->send($mail);

if ($test) {
    echo '<p>Thank you for contacting us '.$name.'! We will get in touch soon.</p>';
}
else {
          echo '<p>Something went wrong. Please try again later.</p>';
}
}

Comme vous pouvez le voir, il est vraiment simple formulaire avec trois champs, nom, mail et message. J'ai aussi d'autres outils de validation mis en place pour chacune de contact les champs de formulaire, mais je pense qu'il est de peu d'intérêt ici.

Vous remercier pour l'aide.

Edit:
Il suffit de tester avec l'aide de gmail comme serveur smtp. Malheureusement, il donne toujours le même résultat exact.

  • Vider le contenu de $email et $my_email après que vous avez fait votre garniture/htmlspecialchars/strip_tags travail et de voir ce qu'ils ressemble. Le swiftmailer code lui-même semble ok, peut-être que les adresses sont l'obtention de déformation quelque part avant qu'ils n'atteignent swiftmailer.
  • Et retirer les deux, strip_tags et htmlspecialchars. Ces deux fonctions ne sont pas conçus pour fonctionner avec les adresses email et les noms, mais avec HTML. Je pense que vous êtes de mélange de concepts ici. Faire une fuite, pas de mort cérébrale s'échapper. Savoir ce que vous faites et pourquoi!
  • C'est ce que je soupçonne aussi. Mais ils étaient corrects... Mon autre supposition est possible, l'erreur ne se réfèrent pas à la envoyé à une adresse, mais l'adresse du destinataire? je vais essayer de tester avec une adresse gmail en tant que récepteur et avec le smtp de gmail serveur...
  • ok j'ai quitté que la fonction trim, mais j'obtiens toujours la même erreur
InformationsquelleAutor Maverick | 2011-06-28